@wootsup/yt-builder-mcp 1.12.0 → 2.1.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 (869) hide show
  1. package/README.md +139 -40
  2. package/bin/node-floor.d.ts +28 -0
  3. package/bin/node-floor.js +150 -0
  4. package/bin/yt-builder-mcp.js +51 -10
  5. package/dist/auth.d.ts +3 -121
  6. package/dist/auth.d.ts.map +1 -1
  7. package/dist/auth.js +44 -174
  8. package/dist/auth.js.map +1 -1
  9. package/dist/catalog/build-catalog.d.ts +4 -49
  10. package/dist/catalog/build-catalog.d.ts.map +1 -1
  11. package/dist/catalog/build-catalog.js +15 -126
  12. package/dist/catalog/build-catalog.js.map +1 -1
  13. package/dist/catalog/json-schema.d.ts +3 -0
  14. package/dist/catalog/json-schema.d.ts.map +1 -0
  15. package/dist/catalog/json-schema.js +68 -0
  16. package/dist/catalog/json-schema.js.map +1 -0
  17. package/dist/catalog/output-shapes.d.ts +6 -0
  18. package/dist/catalog/output-shapes.d.ts.map +1 -0
  19. package/dist/catalog/output-shapes.js +89 -0
  20. package/dist/catalog/output-shapes.js.map +1 -0
  21. package/dist/catalog/tool-catalog-markdown.d.ts +1 -37
  22. package/dist/catalog/tool-catalog-markdown.d.ts.map +1 -1
  23. package/dist/catalog/tool-catalog-markdown.js +8 -52
  24. package/dist/catalog/tool-catalog-markdown.js.map +1 -1
  25. package/dist/cli/doctor-command.d.ts +2 -7
  26. package/dist/cli/doctor-command.d.ts.map +1 -1
  27. package/dist/cli/doctor-command.js +21 -62
  28. package/dist/cli/doctor-command.js.map +1 -1
  29. package/dist/cli/invocation-decision.d.ts +4 -52
  30. package/dist/cli/invocation-decision.d.ts.map +1 -1
  31. package/dist/cli/invocation-decision.js +46 -55
  32. package/dist/cli/invocation-decision.js.map +1 -1
  33. package/dist/client.d.ts +3 -107
  34. package/dist/client.d.ts.map +1 -1
  35. package/dist/client.js +34 -115
  36. package/dist/client.js.map +1 -1
  37. package/dist/clients/claude-code.d.ts +0 -15
  38. package/dist/clients/claude-code.d.ts.map +1 -1
  39. package/dist/clients/claude-code.js +1 -23
  40. package/dist/clients/claude-code.js.map +1 -1
  41. package/dist/clients/claude-desktop.d.ts +0 -16
  42. package/dist/clients/claude-desktop.d.ts.map +1 -1
  43. package/dist/clients/claude-desktop.js +1 -19
  44. package/dist/clients/claude-desktop.js.map +1 -1
  45. package/dist/clients/cline.d.ts +0 -23
  46. package/dist/clients/cline.d.ts.map +1 -1
  47. package/dist/clients/cline.js +1 -34
  48. package/dist/clients/cline.js.map +1 -1
  49. package/dist/clients/codex-cli.d.ts +0 -39
  50. package/dist/clients/codex-cli.d.ts.map +1 -1
  51. package/dist/clients/codex-cli.js +12 -147
  52. package/dist/clients/codex-cli.js.map +1 -1
  53. package/dist/clients/config-file.d.ts +15 -0
  54. package/dist/clients/config-file.d.ts.map +1 -0
  55. package/dist/clients/config-file.js +86 -0
  56. package/dist/clients/config-file.js.map +1 -0
  57. package/dist/clients/continue.d.ts +0 -10
  58. package/dist/clients/continue.d.ts.map +1 -1
  59. package/dist/clients/continue.js +3 -30
  60. package/dist/clients/continue.js.map +1 -1
  61. package/dist/clients/cursor.d.ts +0 -9
  62. package/dist/clients/cursor.d.ts.map +1 -1
  63. package/dist/clients/cursor.js +1 -12
  64. package/dist/clients/cursor.js.map +1 -1
  65. package/dist/clients/gemini-cli.d.ts +0 -15
  66. package/dist/clients/gemini-cli.d.ts.map +1 -1
  67. package/dist/clients/gemini-cli.js +1 -18
  68. package/dist/clients/gemini-cli.js.map +1 -1
  69. package/dist/clients/home.d.ts +0 -12
  70. package/dist/clients/home.d.ts.map +1 -1
  71. package/dist/clients/home.js +0 -12
  72. package/dist/clients/home.js.map +1 -1
  73. package/dist/clients/index.d.ts +2 -153
  74. package/dist/clients/index.d.ts.map +1 -1
  75. package/dist/clients/index.js +3 -153
  76. package/dist/clients/index.js.map +1 -1
  77. package/dist/clients/roo-code.d.ts +0 -20
  78. package/dist/clients/roo-code.d.ts.map +1 -1
  79. package/dist/clients/roo-code.js +1 -23
  80. package/dist/clients/roo-code.js.map +1 -1
  81. package/dist/clients/zed.d.ts +0 -9
  82. package/dist/clients/zed.d.ts.map +1 -1
  83. package/dist/clients/zed.js +1 -19
  84. package/dist/clients/zed.js.map +1 -1
  85. package/dist/compat-floor.d.ts +35 -0
  86. package/dist/compat-floor.d.ts.map +1 -0
  87. package/dist/compat-floor.js +84 -0
  88. package/dist/compat-floor.js.map +1 -0
  89. package/dist/compat-probe.d.ts +6 -0
  90. package/dist/compat-probe.d.ts.map +1 -0
  91. package/dist/compat-probe.js +20 -0
  92. package/dist/compat-probe.js.map +1 -0
  93. package/dist/diagnostics/ca-reexec.d.ts +0 -30
  94. package/dist/diagnostics/ca-reexec.d.ts.map +1 -1
  95. package/dist/diagnostics/ca-reexec.js +0 -62
  96. package/dist/diagnostics/ca-reexec.js.map +1 -1
  97. package/dist/diagnostics/ca-trust.d.ts +0 -22
  98. package/dist/diagnostics/ca-trust.d.ts.map +1 -1
  99. package/dist/diagnostics/ca-trust.js +3 -42
  100. package/dist/diagnostics/ca-trust.js.map +1 -1
  101. package/dist/diagnostics/diagnose-network-error.d.ts +1 -38
  102. package/dist/diagnostics/diagnose-network-error.d.ts.map +1 -1
  103. package/dist/diagnostics/diagnose-network-error.js +27 -38
  104. package/dist/diagnostics/diagnose-network-error.js.map +1 -1
  105. package/dist/diagnostics/doctor.d.ts +1 -85
  106. package/dist/diagnostics/doctor.d.ts.map +1 -1
  107. package/dist/diagnostics/doctor.js +7 -92
  108. package/dist/diagnostics/doctor.js.map +1 -1
  109. package/dist/diagnostics/startup-self-probe.d.ts +3 -25
  110. package/dist/diagnostics/startup-self-probe.d.ts.map +1 -1
  111. package/dist/diagnostics/startup-self-probe.js +11 -48
  112. package/dist/diagnostics/startup-self-probe.js.map +1 -1
  113. package/dist/errors/hints.d.ts +0 -44
  114. package/dist/errors/hints.d.ts.map +1 -1
  115. package/dist/errors/hints.js +1 -33
  116. package/dist/errors/hints.js.map +1 -1
  117. package/dist/errors/mask.d.ts +0 -31
  118. package/dist/errors/mask.d.ts.map +1 -1
  119. package/dist/errors/mask.js +0 -32
  120. package/dist/errors/mask.js.map +1 -1
  121. package/dist/errors/redact-credentials.d.ts +2 -0
  122. package/dist/errors/redact-credentials.d.ts.map +1 -0
  123. package/dist/errors/redact-credentials.js +13 -0
  124. package/dist/errors/redact-credentials.js.map +1 -0
  125. package/dist/errors/sanitize.d.ts +0 -29
  126. package/dist/errors/sanitize.d.ts.map +1 -1
  127. package/dist/errors/sanitize.js +0 -40
  128. package/dist/errors/sanitize.js.map +1 -1
  129. package/dist/errors.d.ts +6 -17
  130. package/dist/errors.d.ts.map +1 -1
  131. package/dist/errors.js +16 -21
  132. package/dist/errors.js.map +1 -1
  133. package/dist/gateway/advanced-read-tool.d.ts +0 -32
  134. package/dist/gateway/advanced-read-tool.d.ts.map +1 -1
  135. package/dist/gateway/advanced-read-tool.js +43 -111
  136. package/dist/gateway/advanced-read-tool.js.map +1 -1
  137. package/dist/gateway/advanced-tool/discovery.d.ts +1 -12
  138. package/dist/gateway/advanced-tool/discovery.d.ts.map +1 -1
  139. package/dist/gateway/advanced-tool/discovery.js +15 -24
  140. package/dist/gateway/advanced-tool/discovery.js.map +1 -1
  141. package/dist/gateway/advanced-tool/domains.d.ts +7 -66
  142. package/dist/gateway/advanced-tool/domains.d.ts.map +1 -1
  143. package/dist/gateway/advanced-tool/domains.js +36 -80
  144. package/dist/gateway/advanced-tool/domains.js.map +1 -1
  145. package/dist/gateway/advanced-tool/execute.d.ts +0 -25
  146. package/dist/gateway/advanced-tool/execute.d.ts.map +1 -1
  147. package/dist/gateway/advanced-tool/execute.js +13 -49
  148. package/dist/gateway/advanced-tool/execute.js.map +1 -1
  149. package/dist/gateway/advanced-tool/index.d.ts +1 -32
  150. package/dist/gateway/advanced-tool/index.d.ts.map +1 -1
  151. package/dist/gateway/advanced-tool/index.js +1 -35
  152. package/dist/gateway/advanced-tool/index.js.map +1 -1
  153. package/dist/gateway/advanced-tool/register.d.ts +0 -14
  154. package/dist/gateway/advanced-tool/register.d.ts.map +1 -1
  155. package/dist/gateway/advanced-tool/register.js +22 -58
  156. package/dist/gateway/advanced-tool/register.js.map +1 -1
  157. package/dist/gateway/advanced-tool.d.ts +0 -11
  158. package/dist/gateway/advanced-tool.d.ts.map +1 -1
  159. package/dist/gateway/advanced-tool.js +0 -11
  160. package/dist/gateway/advanced-tool.js.map +1 -1
  161. package/dist/gateway/capturing-server.d.ts +3 -88
  162. package/dist/gateway/capturing-server.d.ts.map +1 -1
  163. package/dist/gateway/capturing-server.js +0 -77
  164. package/dist/gateway/capturing-server.js.map +1 -1
  165. package/dist/gateway/essentials.d.ts +1 -63
  166. package/dist/gateway/essentials.d.ts.map +1 -1
  167. package/dist/gateway/essentials.js +9 -178
  168. package/dist/gateway/essentials.js.map +1 -1
  169. package/dist/gateway/test-support.d.ts +0 -28
  170. package/dist/gateway/test-support.d.ts.map +1 -1
  171. package/dist/gateway/test-support.js +0 -29
  172. package/dist/gateway/test-support.js.map +1 -1
  173. package/dist/health-response.d.ts +2 -0
  174. package/dist/health-response.d.ts.map +1 -0
  175. package/dist/health-response.js +7 -0
  176. package/dist/health-response.js.map +1 -0
  177. package/dist/icon-data.js +0 -3
  178. package/dist/icon-data.js.map +1 -1
  179. package/dist/index.d.ts +7 -23
  180. package/dist/index.d.ts.map +1 -1
  181. package/dist/index.js +46 -130
  182. package/dist/index.js.map +1 -1
  183. package/dist/install-skill.d.ts +0 -44
  184. package/dist/install-skill.d.ts.map +1 -1
  185. package/dist/install-skill.js +8 -48
  186. package/dist/install-skill.js.map +1 -1
  187. package/dist/net/extra-headers.d.ts +0 -58
  188. package/dist/net/extra-headers.d.ts.map +1 -1
  189. package/dist/net/extra-headers.js +0 -67
  190. package/dist/net/extra-headers.js.map +1 -1
  191. package/dist/net/internal-host.d.ts +0 -31
  192. package/dist/net/internal-host.d.ts.map +1 -1
  193. package/dist/net/internal-host.js +7 -65
  194. package/dist/net/internal-host.js.map +1 -1
  195. package/dist/net/proxy-dispatcher.d.ts +0 -37
  196. package/dist/net/proxy-dispatcher.d.ts.map +1 -1
  197. package/dist/net/proxy-dispatcher.js +0 -40
  198. package/dist/net/proxy-dispatcher.js.map +1 -1
  199. package/dist/net/public-fetch.d.ts +53 -0
  200. package/dist/net/public-fetch.d.ts.map +1 -0
  201. package/dist/net/public-fetch.js +143 -0
  202. package/dist/net/public-fetch.js.map +1 -0
  203. package/dist/net/public-page-report.d.ts +26 -0
  204. package/dist/net/public-page-report.d.ts.map +1 -0
  205. package/dist/net/public-page-report.js +145 -0
  206. package/dist/net/public-page-report.js.map +1 -0
  207. package/dist/net/redirect-safe-fetch.d.ts +14 -0
  208. package/dist/net/redirect-safe-fetch.d.ts.map +1 -0
  209. package/dist/net/redirect-safe-fetch.js +61 -0
  210. package/dist/net/redirect-safe-fetch.js.map +1 -0
  211. package/dist/net/session-recovery-fetch.d.ts +7 -0
  212. package/dist/net/session-recovery-fetch.d.ts.map +1 -0
  213. package/dist/net/session-recovery-fetch.js +139 -0
  214. package/dist/net/session-recovery-fetch.js.map +1 -0
  215. package/dist/net/site-basic-auth.d.ts +1 -59
  216. package/dist/net/site-basic-auth.d.ts.map +1 -1
  217. package/dist/net/site-basic-auth.js +5 -94
  218. package/dist/net/site-basic-auth.js.map +1 -1
  219. package/dist/package-version.d.ts +2 -0
  220. package/dist/package-version.d.ts.map +1 -0
  221. package/dist/package-version.js +15 -0
  222. package/dist/package-version.js.map +1 -0
  223. package/dist/platform/detect.d.ts +0 -54
  224. package/dist/platform/detect.d.ts.map +1 -1
  225. package/dist/platform/detect.js +0 -53
  226. package/dist/platform/detect.js.map +1 -1
  227. package/dist/platform/index.d.ts +0 -100
  228. package/dist/platform/index.d.ts.map +1 -1
  229. package/dist/platform/index.js +0 -106
  230. package/dist/platform/index.js.map +1 -1
  231. package/dist/platform/joomla.d.ts +0 -35
  232. package/dist/platform/joomla.d.ts.map +1 -1
  233. package/dist/platform/joomla.js +0 -35
  234. package/dist/platform/joomla.js.map +1 -1
  235. package/dist/product-name.d.ts +2 -0
  236. package/dist/product-name.d.ts.map +1 -0
  237. package/dist/product-name.js +2 -0
  238. package/dist/product-name.js.map +1 -0
  239. package/dist/proxy/bridge.d.ts +36 -76
  240. package/dist/proxy/bridge.d.ts.map +1 -1
  241. package/dist/proxy/bridge.js +443 -136
  242. package/dist/proxy/bridge.js.map +1 -1
  243. package/dist/proxy/confirm-elicitation.d.ts +22 -0
  244. package/dist/proxy/confirm-elicitation.d.ts.map +1 -0
  245. package/dist/proxy/confirm-elicitation.js +170 -0
  246. package/dist/proxy/confirm-elicitation.js.map +1 -0
  247. package/dist/proxy/confirm-question-contract.d.ts +6 -0
  248. package/dist/proxy/confirm-question-contract.d.ts.map +1 -0
  249. package/dist/proxy/confirm-question-contract.js +9 -0
  250. package/dist/proxy/confirm-question-contract.js.map +1 -0
  251. package/dist/proxy/confirm-question.d.ts +2 -0
  252. package/dist/proxy/confirm-question.d.ts.map +1 -0
  253. package/dist/proxy/confirm-question.js +125 -0
  254. package/dist/proxy/confirm-question.js.map +1 -0
  255. package/dist/proxy/instructions.d.ts +4 -0
  256. package/dist/proxy/instructions.d.ts.map +1 -0
  257. package/dist/proxy/instructions.js +12 -0
  258. package/dist/proxy/instructions.js.map +1 -0
  259. package/dist/proxy/mode.d.ts +14 -9
  260. package/dist/proxy/mode.d.ts.map +1 -1
  261. package/dist/proxy/mode.js +58 -34
  262. package/dist/proxy/mode.js.map +1 -1
  263. package/dist/proxy/multi-site.d.ts +42 -0
  264. package/dist/proxy/multi-site.d.ts.map +1 -0
  265. package/dist/proxy/multi-site.js +134 -0
  266. package/dist/proxy/multi-site.js.map +1 -0
  267. package/dist/proxy/request-headers.d.ts +9 -0
  268. package/dist/proxy/request-headers.d.ts.map +1 -0
  269. package/dist/proxy/request-headers.js +17 -0
  270. package/dist/proxy/request-headers.js.map +1 -0
  271. package/dist/proxy/shadow-tools.d.ts +9 -0
  272. package/dist/proxy/shadow-tools.d.ts.map +1 -0
  273. package/dist/proxy/shadow-tools.js +42 -0
  274. package/dist/proxy/shadow-tools.js.map +1 -0
  275. package/dist/proxy/tools-list-cap.d.ts +7 -0
  276. package/dist/proxy/tools-list-cap.d.ts.map +1 -0
  277. package/dist/proxy/tools-list-cap.js +14 -0
  278. package/dist/proxy/tools-list-cap.js.map +1 -0
  279. package/dist/proxy/transport-uncertainty.d.ts +2 -0
  280. package/dist/proxy/transport-uncertainty.d.ts.map +1 -0
  281. package/dist/proxy/transport-uncertainty.js +8 -0
  282. package/dist/proxy/transport-uncertainty.js.map +1 -0
  283. package/dist/proxy/upstream-error.d.ts +7 -0
  284. package/dist/proxy/upstream-error.d.ts.map +1 -0
  285. package/dist/proxy/upstream-error.js +35 -0
  286. package/dist/proxy/upstream-error.js.map +1 -0
  287. package/dist/proxy/wire-dialect.d.ts +5 -0
  288. package/dist/proxy/wire-dialect.d.ts.map +1 -0
  289. package/dist/proxy/wire-dialect.js +33 -0
  290. package/dist/proxy/wire-dialect.js.map +1 -0
  291. package/dist/server.d.ts +14 -82
  292. package/dist/server.d.ts.map +1 -1
  293. package/dist/server.js +109 -204
  294. package/dist/server.js.map +1 -1
  295. package/dist/setup/banner-color.d.ts +13 -0
  296. package/dist/setup/banner-color.d.ts.map +1 -0
  297. package/dist/setup/banner-color.js +93 -0
  298. package/dist/setup/banner-color.js.map +1 -0
  299. package/dist/setup/banner.d.ts +22 -0
  300. package/dist/setup/banner.d.ts.map +1 -0
  301. package/dist/setup/banner.js +120 -0
  302. package/dist/setup/banner.js.map +1 -0
  303. package/dist/setup/ca-recovery.d.ts +20 -0
  304. package/dist/setup/ca-recovery.d.ts.map +1 -0
  305. package/dist/setup/ca-recovery.js +92 -0
  306. package/dist/setup/ca-recovery.js.map +1 -0
  307. package/dist/setup/closing.d.ts +15 -0
  308. package/dist/setup/closing.d.ts.map +1 -0
  309. package/dist/setup/closing.js +43 -0
  310. package/dist/setup/closing.js.map +1 -0
  311. package/dist/setup/corporate-ca.d.ts +16 -0
  312. package/dist/setup/corporate-ca.d.ts.map +1 -0
  313. package/dist/setup/corporate-ca.js +32 -0
  314. package/dist/setup/corporate-ca.js.map +1 -0
  315. package/dist/setup/host-platform.d.ts +8 -0
  316. package/dist/setup/host-platform.d.ts.map +1 -0
  317. package/dist/setup/host-platform.js +21 -0
  318. package/dist/setup/host-platform.js.map +1 -0
  319. package/dist/setup/install-configs.d.ts +18 -0
  320. package/dist/setup/install-configs.d.ts.map +1 -0
  321. package/dist/setup/install-configs.js +95 -0
  322. package/dist/setup/install-configs.js.map +1 -0
  323. package/dist/setup/multi-site-loop.d.ts +14 -0
  324. package/dist/setup/multi-site-loop.d.ts.map +1 -0
  325. package/dist/setup/multi-site-loop.js +20 -0
  326. package/dist/setup/multi-site-loop.js.map +1 -0
  327. package/dist/setup/phases.d.ts +18 -0
  328. package/dist/setup/phases.d.ts.map +1 -0
  329. package/dist/setup/phases.js +55 -0
  330. package/dist/setup/phases.js.map +1 -0
  331. package/dist/setup/registry-remedy.d.ts +12 -0
  332. package/dist/setup/registry-remedy.d.ts.map +1 -0
  333. package/dist/setup/registry-remedy.js +37 -0
  334. package/dist/setup/registry-remedy.js.map +1 -0
  335. package/dist/setup/resume.d.ts +28 -0
  336. package/dist/setup/resume.d.ts.map +1 -0
  337. package/dist/setup/resume.js +99 -0
  338. package/dist/setup/resume.js.map +1 -0
  339. package/dist/setup-ca-env.d.ts +0 -30
  340. package/dist/setup-ca-env.d.ts.map +1 -1
  341. package/dist/setup-ca-env.js +0 -28
  342. package/dist/setup-ca-env.js.map +1 -1
  343. package/dist/setup-ca-reprobe.d.ts +0 -25
  344. package/dist/setup-ca-reprobe.d.ts.map +1 -1
  345. package/dist/setup-ca-reprobe.js +0 -34
  346. package/dist/setup-ca-reprobe.js.map +1 -1
  347. package/dist/setup-cli-confirm.d.ts +0 -34
  348. package/dist/setup-cli-confirm.d.ts.map +1 -1
  349. package/dist/setup-cli-confirm.js +0 -36
  350. package/dist/setup-cli-confirm.js.map +1 -1
  351. package/dist/setup-cli.d.ts +6 -167
  352. package/dist/setup-cli.d.ts.map +1 -1
  353. package/dist/setup-cli.js +165 -177
  354. package/dist/setup-cli.js.map +1 -1
  355. package/dist/setup-npx-spec.d.ts +0 -36
  356. package/dist/setup-npx-spec.d.ts.map +1 -1
  357. package/dist/setup-npx-spec.js +0 -38
  358. package/dist/setup-npx-spec.js.map +1 -1
  359. package/dist/setup-prompts.d.ts +5 -70
  360. package/dist/setup-prompts.d.ts.map +1 -1
  361. package/dist/setup-prompts.js +67 -107
  362. package/dist/setup-prompts.js.map +1 -1
  363. package/dist/setup-token.d.ts +0 -34
  364. package/dist/setup-token.d.ts.map +1 -1
  365. package/dist/setup-token.js +0 -40
  366. package/dist/setup-token.js.map +1 -1
  367. package/dist/setup-wizard-defaults.d.ts +2 -37
  368. package/dist/setup-wizard-defaults.d.ts.map +1 -1
  369. package/dist/setup-wizard-defaults.js +28 -93
  370. package/dist/setup-wizard-defaults.js.map +1 -1
  371. package/dist/setup-wizard-handshake.d.ts +1 -19
  372. package/dist/setup-wizard-handshake.d.ts.map +1 -1
  373. package/dist/setup-wizard-handshake.js +8 -45
  374. package/dist/setup-wizard-handshake.js.map +1 -1
  375. package/dist/setup-wizard-types.d.ts +18 -217
  376. package/dist/setup-wizard-types.d.ts.map +1 -1
  377. package/dist/setup-wizard-types.js +0 -9
  378. package/dist/setup-wizard-types.js.map +1 -1
  379. package/dist/setup-wizard-write-types.d.ts +19 -0
  380. package/dist/setup-wizard-write-types.d.ts.map +1 -0
  381. package/dist/setup-wizard-write-types.js +2 -0
  382. package/dist/setup-wizard-write-types.js.map +1 -0
  383. package/dist/setup-wizard.d.ts +0 -28
  384. package/dist/setup-wizard.d.ts.map +1 -1
  385. package/dist/setup-wizard.js +167 -412
  386. package/dist/setup-wizard.js.map +1 -1
  387. package/dist/setup.d.ts +0 -15
  388. package/dist/setup.d.ts.map +1 -1
  389. package/dist/setup.js +0 -15
  390. package/dist/setup.js.map +1 -1
  391. package/dist/sites/bootstrap.d.ts +0 -38
  392. package/dist/sites/bootstrap.d.ts.map +1 -1
  393. package/dist/sites/bootstrap.js +0 -44
  394. package/dist/sites/bootstrap.js.map +1 -1
  395. package/dist/sites/cli/add-site.d.ts +0 -76
  396. package/dist/sites/cli/add-site.d.ts.map +1 -1
  397. package/dist/sites/cli/add-site.js +0 -71
  398. package/dist/sites/cli/add-site.js.map +1 -1
  399. package/dist/sites/cli/list-sites.d.ts +0 -31
  400. package/dist/sites/cli/list-sites.d.ts.map +1 -1
  401. package/dist/sites/cli/list-sites.js +0 -45
  402. package/dist/sites/cli/list-sites.js.map +1 -1
  403. package/dist/sites/cli/remove-site.d.ts +0 -37
  404. package/dist/sites/cli/remove-site.d.ts.map +1 -1
  405. package/dist/sites/cli/remove-site.js +0 -37
  406. package/dist/sites/cli/remove-site.js.map +1 -1
  407. package/dist/sites/cli/set-default.d.ts +0 -25
  408. package/dist/sites/cli/set-default.d.ts.map +1 -1
  409. package/dist/sites/cli/set-default.js +0 -22
  410. package/dist/sites/cli/set-default.js.map +1 -1
  411. package/dist/sites/cli/test-site.d.ts +0 -44
  412. package/dist/sites/cli/test-site.d.ts.map +1 -1
  413. package/dist/sites/cli/test-site.js +0 -39
  414. package/dist/sites/cli/test-site.js.map +1 -1
  415. package/dist/sites/client-pool.d.ts +11 -164
  416. package/dist/sites/client-pool.d.ts.map +1 -1
  417. package/dist/sites/client-pool.js +73 -194
  418. package/dist/sites/client-pool.js.map +1 -1
  419. package/dist/sites/config-problem.d.ts +2 -0
  420. package/dist/sites/config-problem.d.ts.map +1 -0
  421. package/dist/sites/config-problem.js +13 -0
  422. package/dist/sites/config-problem.js.map +1 -0
  423. package/dist/sites/env-bridge.d.ts +0 -69
  424. package/dist/sites/env-bridge.d.ts.map +1 -1
  425. package/dist/sites/env-bridge.js +2 -71
  426. package/dist/sites/env-bridge.js.map +1 -1
  427. package/dist/sites/op-inject.d.ts +23 -0
  428. package/dist/sites/op-inject.d.ts.map +1 -0
  429. package/dist/sites/op-inject.js +131 -0
  430. package/dist/sites/op-inject.js.map +1 -0
  431. package/dist/sites/paths.d.ts +0 -19
  432. package/dist/sites/paths.d.ts.map +1 -1
  433. package/dist/sites/paths.js +0 -19
  434. package/dist/sites/paths.js.map +1 -1
  435. package/dist/sites/probe.d.ts +1 -47
  436. package/dist/sites/probe.d.ts.map +1 -1
  437. package/dist/sites/probe.js +4 -46
  438. package/dist/sites/probe.js.map +1 -1
  439. package/dist/sites/registry.d.ts +4 -135
  440. package/dist/sites/registry.d.ts.map +1 -1
  441. package/dist/sites/registry.js +4 -98
  442. package/dist/sites/registry.js.map +1 -1
  443. package/dist/sites/schema.d.ts +3 -51
  444. package/dist/sites/schema.d.ts.map +1 -1
  445. package/dist/sites/schema.js +6 -52
  446. package/dist/sites/schema.js.map +1 -1
  447. package/dist/sites/secret-resolver.d.ts +6 -76
  448. package/dist/sites/secret-resolver.d.ts.map +1 -1
  449. package/dist/sites/secret-resolver.js +39 -104
  450. package/dist/sites/secret-resolver.js.map +1 -1
  451. package/dist/sites/store.d.ts +12 -69
  452. package/dist/sites/store.d.ts.map +1 -1
  453. package/dist/sites/store.js +37 -86
  454. package/dist/sites/store.js.map +1 -1
  455. package/dist/sites/substituted-registry.d.ts +11 -0
  456. package/dist/sites/substituted-registry.d.ts.map +1 -0
  457. package/dist/sites/substituted-registry.js +13 -0
  458. package/dist/sites/substituted-registry.js.map +1 -0
  459. package/dist/sites/tools/fetch-public-url.d.ts +4 -0
  460. package/dist/sites/tools/fetch-public-url.d.ts.map +1 -0
  461. package/dist/sites/tools/fetch-public-url.js +231 -0
  462. package/dist/sites/tools/fetch-public-url.js.map +1 -0
  463. package/dist/sites/tools/index.d.ts +2 -26
  464. package/dist/sites/tools/index.d.ts.map +1 -1
  465. package/dist/sites/tools/index.js +5 -28
  466. package/dist/sites/tools/index.js.map +1 -1
  467. package/dist/sites/tools/sites-list.d.ts +3 -47
  468. package/dist/sites/tools/sites-list.d.ts.map +1 -1
  469. package/dist/sites/tools/sites-list.js +65 -79
  470. package/dist/sites/tools/sites-list.js.map +1 -1
  471. package/dist/sites/tools/sites-overview.d.ts +4 -0
  472. package/dist/sites/tools/sites-overview.d.ts.map +1 -0
  473. package/dist/sites/tools/sites-overview.js +209 -0
  474. package/dist/sites/tools/sites-overview.js.map +1 -0
  475. package/dist/sites/tools/sites-test.d.ts +2 -45
  476. package/dist/sites/tools/sites-test.d.ts.map +1 -1
  477. package/dist/sites/tools/sites-test.js +2 -56
  478. package/dist/sites/tools/sites-test.js.map +1 -1
  479. package/dist/sites/tools/use-site.d.ts +2 -45
  480. package/dist/sites/tools/use-site.d.ts.map +1 -1
  481. package/dist/sites/tools/use-site.js +31 -79
  482. package/dist/sites/tools/use-site.js.map +1 -1
  483. package/dist/sites/unknown-name-result.d.ts +10 -0
  484. package/dist/sites/unknown-name-result.d.ts.map +1 -0
  485. package/dist/sites/unknown-name-result.js +13 -0
  486. package/dist/sites/unknown-name-result.js.map +1 -0
  487. package/dist/skill-instructions.d.ts +7 -0
  488. package/dist/skill-instructions.d.ts.map +1 -0
  489. package/dist/skill-instructions.js +85 -0
  490. package/dist/skill-instructions.js.map +1 -0
  491. package/dist/skill-loader.d.ts +1 -103
  492. package/dist/skill-loader.d.ts.map +1 -1
  493. package/dist/skill-loader.js +6 -143
  494. package/dist/skill-loader.js.map +1 -1
  495. package/dist/skill-manifest.d.ts +0 -20
  496. package/dist/skill-manifest.d.ts.map +1 -1
  497. package/dist/skill-manifest.js +1 -21
  498. package/dist/skill-manifest.js.map +1 -1
  499. package/dist/skill-topics.d.ts +19 -0
  500. package/dist/skill-topics.d.ts.map +1 -0
  501. package/dist/skill-topics.js +181 -0
  502. package/dist/skill-topics.js.map +1 -0
  503. package/dist/tools/active-site.d.ts +16 -0
  504. package/dist/tools/active-site.d.ts.map +1 -0
  505. package/dist/tools/active-site.js +55 -0
  506. package/dist/tools/active-site.js.map +1 -0
  507. package/dist/tools/bind-guidance.d.ts +2 -72
  508. package/dist/tools/bind-guidance.d.ts.map +1 -1
  509. package/dist/tools/bind-guidance.js +2 -72
  510. package/dist/tools/bind-guidance.js.map +1 -1
  511. package/dist/tools/budgeted-table.d.ts +14 -19
  512. package/dist/tools/budgeted-table.d.ts.map +1 -1
  513. package/dist/tools/budgeted-table.js +171 -105
  514. package/dist/tools/budgeted-table.js.map +1 -1
  515. package/dist/tools/elements/bind-output-schema.d.ts +69 -0
  516. package/dist/tools/elements/bind-output-schema.d.ts.map +1 -0
  517. package/dist/tools/elements/bind-output-schema.js +64 -0
  518. package/dist/tools/elements/bind-output-schema.js.map +1 -0
  519. package/dist/tools/elements/builders.d.ts +1 -22
  520. package/dist/tools/elements/builders.d.ts.map +1 -1
  521. package/dist/tools/elements/builders.js +147 -133
  522. package/dist/tools/elements/builders.js.map +1 -1
  523. package/dist/tools/elements/index.d.ts +0 -26
  524. package/dist/tools/elements/index.d.ts.map +1 -1
  525. package/dist/tools/elements/index.js +0 -25
  526. package/dist/tools/elements/index.js.map +1 -1
  527. package/dist/tools/elements/read-output-schemas.d.ts +121 -0
  528. package/dist/tools/elements/read-output-schemas.d.ts.map +1 -0
  529. package/dist/tools/elements/read-output-schemas.js +225 -0
  530. package/dist/tools/elements/read-output-schemas.js.map +1 -0
  531. package/dist/tools/elements/write-output-schemas.d.ts +185 -0
  532. package/dist/tools/elements/write-output-schemas.d.ts.map +1 -0
  533. package/dist/tools/elements/write-output-schemas.js +98 -0
  534. package/dist/tools/elements/write-output-schemas.js.map +1 -0
  535. package/dist/tools/elements.d.ts +0 -11
  536. package/dist/tools/elements.d.ts.map +1 -1
  537. package/dist/tools/elements.js +0 -11
  538. package/dist/tools/elements.js.map +1 -1
  539. package/dist/tools/format/health-format.d.ts +26 -43
  540. package/dist/tools/format/health-format.d.ts.map +1 -1
  541. package/dist/tools/format/health-format.js +32 -63
  542. package/dist/tools/format/health-format.js.map +1 -1
  543. package/dist/tools/format/inspection-format.d.ts +2 -54
  544. package/dist/tools/format/inspection-format.d.ts.map +1 -1
  545. package/dist/tools/format/inspection-format.js +33 -119
  546. package/dist/tools/format/inspection-format.js.map +1 -1
  547. package/dist/tools/format/pages-format.d.ts +32 -69
  548. package/dist/tools/format/pages-format.d.ts.map +1 -1
  549. package/dist/tools/format/pages-format.js +114 -139
  550. package/dist/tools/format/pages-format.js.map +1 -1
  551. package/dist/tools/format/sources-format.d.ts +5 -39
  552. package/dist/tools/format/sources-format.d.ts.map +1 -1
  553. package/dist/tools/format/sources-format.js +57 -87
  554. package/dist/tools/format/sources-format.js.map +1 -1
  555. package/dist/tools/health-output-schemas.d.ts +84 -0
  556. package/dist/tools/health-output-schemas.d.ts.map +1 -0
  557. package/dist/tools/health-output-schemas.js +132 -0
  558. package/dist/tools/health-output-schemas.js.map +1 -0
  559. package/dist/tools/health.d.ts +2 -20
  560. package/dist/tools/health.d.ts.map +1 -1
  561. package/dist/tools/health.js +47 -233
  562. package/dist/tools/health.js.map +1 -1
  563. package/dist/tools/index.d.ts +1 -26
  564. package/dist/tools/index.d.ts.map +1 -1
  565. package/dist/tools/index.js +12 -39
  566. package/dist/tools/index.js.map +1 -1
  567. package/dist/tools/inspection.d.ts +4 -34
  568. package/dist/tools/inspection.d.ts.map +1 -1
  569. package/dist/tools/inspection.js +164 -536
  570. package/dist/tools/inspection.js.map +1 -1
  571. package/dist/tools/library.d.ts +115 -127
  572. package/dist/tools/library.d.ts.map +1 -1
  573. package/dist/tools/library.js +707 -455
  574. package/dist/tools/library.js.map +1 -1
  575. package/dist/tools/local-content/builders.d.ts +1 -17
  576. package/dist/tools/local-content/builders.d.ts.map +1 -1
  577. package/dist/tools/local-content/builders.js +103 -46
  578. package/dist/tools/local-content/builders.js.map +1 -1
  579. package/dist/tools/local-content/index.d.ts +0 -15
  580. package/dist/tools/local-content/index.d.ts.map +1 -1
  581. package/dist/tools/local-content/index.js +0 -14
  582. package/dist/tools/local-content/index.js.map +1 -1
  583. package/dist/tools/local-content/schemas.d.ts +31 -47
  584. package/dist/tools/local-content/schemas.d.ts.map +1 -1
  585. package/dist/tools/local-content/schemas.js +33 -62
  586. package/dist/tools/local-content/schemas.js.map +1 -1
  587. package/dist/tools/modules/builders.d.ts +4 -0
  588. package/dist/tools/modules/builders.d.ts.map +1 -0
  589. package/dist/tools/modules/builders.js +58 -0
  590. package/dist/tools/modules/builders.js.map +1 -0
  591. package/dist/tools/modules/index.d.ts +2 -0
  592. package/dist/tools/modules/index.d.ts.map +1 -0
  593. package/dist/tools/modules/index.js +2 -0
  594. package/dist/tools/modules/index.js.map +1 -0
  595. package/dist/tools/modules/module-id-schema.d.ts +4 -0
  596. package/dist/tools/modules/module-id-schema.d.ts.map +1 -0
  597. package/dist/tools/modules/module-id-schema.js +14 -0
  598. package/dist/tools/modules/module-id-schema.js.map +1 -0
  599. package/dist/tools/modules/module-type-fields.d.ts +10 -0
  600. package/dist/tools/modules/module-type-fields.d.ts.map +1 -0
  601. package/dist/tools/modules/module-type-fields.js +34 -0
  602. package/dist/tools/modules/module-type-fields.js.map +1 -0
  603. package/dist/tools/modules/modules-create.d.ts +59 -0
  604. package/dist/tools/modules/modules-create.d.ts.map +1 -0
  605. package/dist/tools/modules/modules-create.js +154 -0
  606. package/dist/tools/modules/modules-create.js.map +1 -0
  607. package/dist/tools/modules/modules-delete.d.ts +51 -0
  608. package/dist/tools/modules/modules-delete.d.ts.map +1 -0
  609. package/dist/tools/modules/modules-delete.js +180 -0
  610. package/dist/tools/modules/modules-delete.js.map +1 -0
  611. package/dist/tools/modules/modules-update.d.ts +43 -0
  612. package/dist/tools/modules/modules-update.d.ts.map +1 -0
  613. package/dist/tools/modules/modules-update.js +177 -0
  614. package/dist/tools/modules/modules-update.js.map +1 -0
  615. package/dist/tools/modules/placement-hints.d.ts +5 -0
  616. package/dist/tools/modules/placement-hints.d.ts.map +1 -0
  617. package/dist/tools/modules/placement-hints.js +90 -0
  618. package/dist/tools/modules/placement-hints.js.map +1 -0
  619. package/dist/tools/modules/placement-ways.d.ts +13 -0
  620. package/dist/tools/modules/placement-ways.d.ts.map +1 -0
  621. package/dist/tools/modules/placement-ways.js +61 -0
  622. package/dist/tools/modules/placement-ways.js.map +1 -0
  623. package/dist/tools/multi-items/builders.d.ts +1 -21
  624. package/dist/tools/multi-items/builders.d.ts.map +1 -1
  625. package/dist/tools/multi-items/builders.js +22 -65
  626. package/dist/tools/multi-items/builders.js.map +1 -1
  627. package/dist/tools/multi-items/index.d.ts +0 -15
  628. package/dist/tools/multi-items/index.d.ts.map +1 -1
  629. package/dist/tools/multi-items/index.js +0 -15
  630. package/dist/tools/multi-items/index.js.map +1 -1
  631. package/dist/tools/multi-items/item-container-map.d.ts +0 -35
  632. package/dist/tools/multi-items/item-container-map.d.ts.map +1 -1
  633. package/dist/tools/multi-items/item-container-map.js +0 -35
  634. package/dist/tools/multi-items/item-container-map.js.map +1 -1
  635. package/dist/tools/multi-items/output-schemas.d.ts +101 -0
  636. package/dist/tools/multi-items/output-schemas.d.ts.map +1 -0
  637. package/dist/tools/multi-items/output-schemas.js +74 -0
  638. package/dist/tools/multi-items/output-schemas.js.map +1 -0
  639. package/dist/tools/navigation/builders.d.ts +1 -16
  640. package/dist/tools/navigation/builders.d.ts.map +1 -1
  641. package/dist/tools/navigation/builders.js +5 -27
  642. package/dist/tools/navigation/builders.js.map +1 -1
  643. package/dist/tools/navigation/index.d.ts +0 -13
  644. package/dist/tools/navigation/index.d.ts.map +1 -1
  645. package/dist/tools/navigation/index.js +0 -12
  646. package/dist/tools/navigation/index.js.map +1 -1
  647. package/dist/tools/navigation/schemas.d.ts +0 -30
  648. package/dist/tools/navigation/schemas.d.ts.map +1 -1
  649. package/dist/tools/navigation/schemas.js +0 -30
  650. package/dist/tools/navigation/schemas.js.map +1 -1
  651. package/dist/tools/output-schema-metadata.d.ts +5 -0
  652. package/dist/tools/output-schema-metadata.d.ts.map +1 -0
  653. package/dist/tools/output-schema-metadata.js +83 -0
  654. package/dist/tools/output-schema-metadata.js.map +1 -0
  655. package/dist/tools/pages/builders.d.ts +1 -41
  656. package/dist/tools/pages/builders.d.ts.map +1 -1
  657. package/dist/tools/pages/builders.js +320 -405
  658. package/dist/tools/pages/builders.js.map +1 -1
  659. package/dist/tools/pages/header-transparency.d.ts +2 -32
  660. package/dist/tools/pages/header-transparency.d.ts.map +1 -1
  661. package/dist/tools/pages/header-transparency.js +9 -43
  662. package/dist/tools/pages/header-transparency.js.map +1 -1
  663. package/dist/tools/pages/index.d.ts +1 -19
  664. package/dist/tools/pages/index.d.ts.map +1 -1
  665. package/dist/tools/pages/index.js +1 -19
  666. package/dist/tools/pages/index.js.map +1 -1
  667. package/dist/tools/pages/schemas.d.ts +323 -241
  668. package/dist/tools/pages/schemas.d.ts.map +1 -1
  669. package/dist/tools/pages/schemas.js +514 -549
  670. package/dist/tools/pages/schemas.js.map +1 -1
  671. package/dist/tools/pages/write-output-schemas.d.ts +139 -0
  672. package/dist/tools/pages/write-output-schemas.d.ts.map +1 -0
  673. package/dist/tools/pages/write-output-schemas.js +138 -0
  674. package/dist/tools/pages/write-output-schemas.js.map +1 -0
  675. package/dist/tools/pages.d.ts +0 -11
  676. package/dist/tools/pages.d.ts.map +1 -1
  677. package/dist/tools/pages.js +0 -11
  678. package/dist/tools/pages.js.map +1 -1
  679. package/dist/tools/pool-resolve-helper.d.ts +0 -52
  680. package/dist/tools/pool-resolve-helper.d.ts.map +1 -1
  681. package/dist/tools/pool-resolve-helper.js +31 -106
  682. package/dist/tools/pool-resolve-helper.js.map +1 -1
  683. package/dist/tools/progress-phases.d.ts +0 -42
  684. package/dist/tools/progress-phases.d.ts.map +1 -1
  685. package/dist/tools/progress-phases.js +0 -44
  686. package/dist/tools/progress-phases.js.map +1 -1
  687. package/dist/tools/response-budget.d.ts +0 -69
  688. package/dist/tools/response-budget.d.ts.map +1 -1
  689. package/dist/tools/response-budget.js +0 -127
  690. package/dist/tools/response-budget.js.map +1 -1
  691. package/dist/tools/shared-schemas.d.ts +11 -65
  692. package/dist/tools/shared-schemas.d.ts.map +1 -1
  693. package/dist/tools/shared-schemas.js +40 -123
  694. package/dist/tools/shared-schemas.js.map +1 -1
  695. package/dist/tools/skill/builders.d.ts +3 -0
  696. package/dist/tools/skill/builders.d.ts.map +1 -0
  697. package/dist/tools/skill/builders.js +81 -0
  698. package/dist/tools/skill/builders.js.map +1 -0
  699. package/dist/tools/sources/builders.d.ts +1 -11
  700. package/dist/tools/sources/builders.d.ts.map +1 -1
  701. package/dist/tools/sources/builders.js +194 -170
  702. package/dist/tools/sources/builders.js.map +1 -1
  703. package/dist/tools/sources/index.d.ts +0 -17
  704. package/dist/tools/sources/index.d.ts.map +1 -1
  705. package/dist/tools/sources/index.js +0 -16
  706. package/dist/tools/sources/index.js.map +1 -1
  707. package/dist/tools/sources/read-output-schemas.d.ts +101 -0
  708. package/dist/tools/sources/read-output-schemas.d.ts.map +1 -0
  709. package/dist/tools/sources/read-output-schemas.js +105 -0
  710. package/dist/tools/sources/read-output-schemas.js.map +1 -0
  711. package/dist/tools/sources/source-name-argument.d.ts +17 -0
  712. package/dist/tools/sources/source-name-argument.d.ts.map +1 -0
  713. package/dist/tools/sources/source-name-argument.js +64 -0
  714. package/dist/tools/sources/source-name-argument.js.map +1 -0
  715. package/dist/tools/sources/write-output-schemas.d.ts +100 -0
  716. package/dist/tools/sources/write-output-schemas.d.ts.map +1 -0
  717. package/dist/tools/sources/write-output-schemas.js +61 -0
  718. package/dist/tools/sources/write-output-schemas.js.map +1 -0
  719. package/dist/tools/sources.d.ts +0 -12
  720. package/dist/tools/sources.d.ts.map +1 -1
  721. package/dist/tools/sources.js +0 -12
  722. package/dist/tools/sources.js.map +1 -1
  723. package/dist/tools/sparse-fields.d.ts +16 -232
  724. package/dist/tools/sparse-fields.d.ts.map +1 -1
  725. package/dist/tools/sparse-fields.js +178 -242
  726. package/dist/tools/sparse-fields.js.map +1 -1
  727. package/dist/tools/strict-input.d.ts +5 -0
  728. package/dist/tools/strict-input.d.ts.map +1 -0
  729. package/dist/tools/strict-input.js +55 -0
  730. package/dist/tools/strict-input.js.map +1 -0
  731. package/dist/tools/sublayout/builders.d.ts +1 -21
  732. package/dist/tools/sublayout/builders.d.ts.map +1 -1
  733. package/dist/tools/sublayout/builders.js +10 -39
  734. package/dist/tools/sublayout/builders.js.map +1 -1
  735. package/dist/tools/sublayout/index.d.ts +1 -11
  736. package/dist/tools/sublayout/index.d.ts.map +1 -1
  737. package/dist/tools/sublayout/index.js +1 -11
  738. package/dist/tools/sublayout/index.js.map +1 -1
  739. package/dist/tools/sublayout/output-schemas.d.ts +57 -0
  740. package/dist/tools/sublayout/output-schemas.d.ts.map +1 -0
  741. package/dist/tools/sublayout/output-schemas.js +51 -0
  742. package/dist/tools/sublayout/output-schemas.js.map +1 -0
  743. package/dist/tools/tool-builder/annotations.d.ts +1 -49
  744. package/dist/tools/tool-builder/annotations.d.ts.map +1 -1
  745. package/dist/tools/tool-builder/annotations.js +9 -49
  746. package/dist/tools/tool-builder/annotations.js.map +1 -1
  747. package/dist/tools/tool-builder/confirm-preview.d.ts +24 -0
  748. package/dist/tools/tool-builder/confirm-preview.d.ts.map +1 -0
  749. package/dist/tools/tool-builder/confirm-preview.js +37 -0
  750. package/dist/tools/tool-builder/confirm-preview.js.map +1 -0
  751. package/dist/tools/tool-builder/define.d.ts +6 -26
  752. package/dist/tools/tool-builder/define.d.ts.map +1 -1
  753. package/dist/tools/tool-builder/define.js +0 -25
  754. package/dist/tools/tool-builder/define.js.map +1 -1
  755. package/dist/tools/tool-builder/index.d.ts +3 -26
  756. package/dist/tools/tool-builder/index.d.ts.map +1 -1
  757. package/dist/tools/tool-builder/index.js +2 -25
  758. package/dist/tools/tool-builder/index.js.map +1 -1
  759. package/dist/tools/tool-builder/results.d.ts +4 -124
  760. package/dist/tools/tool-builder/results.d.ts.map +1 -1
  761. package/dist/tools/tool-builder/results.js +258 -263
  762. package/dist/tools/tool-builder/results.js.map +1 -1
  763. package/dist/tools/tool-builder/types.d.ts +5 -59
  764. package/dist/tools/tool-builder/types.d.ts.map +1 -1
  765. package/dist/tools/tool-builder/types.js +0 -7
  766. package/dist/tools/tool-builder/types.js.map +1 -1
  767. package/dist/tools/tool-builder.d.ts +0 -14
  768. package/dist/tools/tool-builder.d.ts.map +1 -1
  769. package/dist/tools/tool-builder.js +0 -14
  770. package/dist/tools/tool-builder.js.map +1 -1
  771. package/dist/uninstall-skill.d.ts +0 -41
  772. package/dist/uninstall-skill.d.ts.map +1 -1
  773. package/dist/uninstall-skill.js +3 -50
  774. package/dist/uninstall-skill.js.map +1 -1
  775. package/dist/uninstall.d.ts +0 -41
  776. package/dist/uninstall.d.ts.map +1 -1
  777. package/dist/uninstall.js +1 -29
  778. package/dist/uninstall.js.map +1 -1
  779. package/dist/update/update-check.d.ts +0 -26
  780. package/dist/update/update-check.d.ts.map +1 -1
  781. package/dist/update/update-check.js +0 -25
  782. package/dist/update/update-check.js.map +1 -1
  783. package/manifest.json +7 -12
  784. package/package.json +6 -11
  785. package/skills/yt-builder-mcp/SKILL.md +1871 -414
  786. package/dist/tools/elements/handlers-write.d.ts +0 -89
  787. package/dist/tools/elements/handlers-write.d.ts.map +0 -1
  788. package/dist/tools/elements/handlers-write.js +0 -797
  789. package/dist/tools/elements/handlers-write.js.map +0 -1
  790. package/dist/tools/elements/handlers.d.ts +0 -130
  791. package/dist/tools/elements/handlers.d.ts.map +0 -1
  792. package/dist/tools/elements/handlers.js +0 -581
  793. package/dist/tools/elements/handlers.js.map +0 -1
  794. package/dist/tools/elements/layout-hierarchy-rules.d.ts +0 -62
  795. package/dist/tools/elements/layout-hierarchy-rules.d.ts.map +0 -1
  796. package/dist/tools/elements/layout-hierarchy-rules.js +0 -154
  797. package/dist/tools/elements/layout-hierarchy-rules.js.map +0 -1
  798. package/dist/tools/elements/schema-validation.d.ts +0 -218
  799. package/dist/tools/elements/schema-validation.d.ts.map +0 -1
  800. package/dist/tools/elements/schema-validation.js +0 -685
  801. package/dist/tools/elements/schema-validation.js.map +0 -1
  802. package/dist/tools/elicitation.d.ts +0 -87
  803. package/dist/tools/elicitation.d.ts.map +0 -1
  804. package/dist/tools/elicitation.js +0 -100
  805. package/dist/tools/elicitation.js.map +0 -1
  806. package/dist/tools/format/elements-format.d.ts +0 -75
  807. package/dist/tools/format/elements-format.d.ts.map +0 -1
  808. package/dist/tools/format/elements-format.js +0 -368
  809. package/dist/tools/format/elements-format.js.map +0 -1
  810. package/dist/tools/format/source-schema-format.d.ts +0 -74
  811. package/dist/tools/format/source-schema-format.d.ts.map +0 -1
  812. package/dist/tools/format/source-schema-format.js +0 -208
  813. package/dist/tools/format/source-schema-format.js.map +0 -1
  814. package/dist/tools/layout-flatten.d.ts +0 -84
  815. package/dist/tools/layout-flatten.d.ts.map +0 -1
  816. package/dist/tools/layout-flatten.js +0 -129
  817. package/dist/tools/layout-flatten.js.map +0 -1
  818. package/dist/tools/local-content/handlers.d.ts +0 -56
  819. package/dist/tools/local-content/handlers.d.ts.map +0 -1
  820. package/dist/tools/local-content/handlers.js +0 -320
  821. package/dist/tools/local-content/handlers.js.map +0 -1
  822. package/dist/tools/multi-items/clean-implode-handler.d.ts +0 -37
  823. package/dist/tools/multi-items/clean-implode-handler.d.ts.map +0 -1
  824. package/dist/tools/multi-items/clean-implode-handler.js +0 -65
  825. package/dist/tools/multi-items/clean-implode-handler.js.map +0 -1
  826. package/dist/tools/multi-items/format/inspection-format.d.ts +0 -41
  827. package/dist/tools/multi-items/format/inspection-format.d.ts.map +0 -1
  828. package/dist/tools/multi-items/format/inspection-format.js +0 -64
  829. package/dist/tools/multi-items/format/inspection-format.js.map +0 -1
  830. package/dist/tools/multi-items/inspect-handler.d.ts +0 -97
  831. package/dist/tools/multi-items/inspect-handler.d.ts.map +0 -1
  832. package/dist/tools/multi-items/inspect-handler.js +0 -323
  833. package/dist/tools/multi-items/inspect-handler.js.map +0 -1
  834. package/dist/tools/multi-items/inspection-cache.d.ts +0 -85
  835. package/dist/tools/multi-items/inspection-cache.d.ts.map +0 -1
  836. package/dist/tools/multi-items/inspection-cache.js +0 -126
  837. package/dist/tools/multi-items/inspection-cache.js.map +0 -1
  838. package/dist/tools/navigation/handlers.d.ts +0 -30
  839. package/dist/tools/navigation/handlers.d.ts.map +0 -1
  840. package/dist/tools/navigation/handlers.js +0 -41
  841. package/dist/tools/navigation/handlers.js.map +0 -1
  842. package/dist/tools/pages/handlers-audit.d.ts +0 -140
  843. package/dist/tools/pages/handlers-audit.d.ts.map +0 -1
  844. package/dist/tools/pages/handlers-audit.js +0 -714
  845. package/dist/tools/pages/handlers-audit.js.map +0 -1
  846. package/dist/tools/pages/handlers-read.d.ts +0 -133
  847. package/dist/tools/pages/handlers-read.d.ts.map +0 -1
  848. package/dist/tools/pages/handlers-read.js +0 -1061
  849. package/dist/tools/pages/handlers-read.js.map +0 -1
  850. package/dist/tools/pages/handlers-write.d.ts +0 -212
  851. package/dist/tools/pages/handlers-write.d.ts.map +0 -1
  852. package/dist/tools/pages/handlers-write.js +0 -419
  853. package/dist/tools/pages/handlers-write.js.map +0 -1
  854. package/dist/tools/pages/target.d.ts +0 -162
  855. package/dist/tools/pages/target.d.ts.map +0 -1
  856. package/dist/tools/pages/target.js +0 -239
  857. package/dist/tools/pages/target.js.map +0 -1
  858. package/dist/tools/sources/handlers-bind.d.ts +0 -148
  859. package/dist/tools/sources/handlers-bind.d.ts.map +0 -1
  860. package/dist/tools/sources/handlers-bind.js +0 -657
  861. package/dist/tools/sources/handlers-bind.js.map +0 -1
  862. package/dist/tools/sources/handlers.d.ts +0 -116
  863. package/dist/tools/sources/handlers.d.ts.map +0 -1
  864. package/dist/tools/sources/handlers.js +0 -289
  865. package/dist/tools/sources/handlers.js.map +0 -1
  866. package/dist/tools/sublayout/inspect-sublayout-handler.d.ts +0 -95
  867. package/dist/tools/sublayout/inspect-sublayout-handler.d.ts.map +0 -1
  868. package/dist/tools/sublayout/inspect-sublayout-handler.js +0 -181
  869. package/dist/tools/sublayout/inspect-sublayout-handler.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"install-skill.js","sourceRoot":"","sources":["../src/install-skill.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install-skill.js","sourceRoot":"","sources":["../src/install-skill.ts"],"names":[],"mappings":"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"}
@@ -1,66 +1,8 @@
1
- /**
2
- * Parse `YTB_MCP_EXTRA_HEADERS` into a header map that is merged into EVERY
3
- * outbound request on BOTH transports (fat-mode {@link RestClient} and
4
- * proxy-mode `StreamableHTTPClientTransport`).
5
- *
6
- * Why this exists (customer gap #14): a WordPress/Joomla site fronted by HTTP
7
- * Basic-Auth, a WAF cookie, or a custom required header (e.g. a corporate
8
- * gateway secret) cannot be reached — the only header we ever send is
9
- * `Authorization: Bearer …`. This env var lets the operator attach the extra
10
- * header(s) the gateway demands WITHOUT us inventing per-provider knobs.
11
- *
12
- * ── Accepted formats (auto-detected) ───────────────────────────────────────
13
- * The value is read as ONE of two shapes, in this precedence:
14
- *
15
- * 1. **JSON object** — `{"X-WAF-Token":"abc","Cookie":"sid=42"}`.
16
- * Used when the trimmed value starts with `{` AND parses as a non-array
17
- * object. Non-string values are coerced via String(); null/array values
18
- * are dropped (with a warning).
19
- *
20
- * 2. **`Name: value` lines** — one header per line, first `:` splits:
21
- *
22
- * X-WAF-Token: abc
23
- * Cookie: sid=42
24
- *
25
- * Blank lines and lines starting with `#` (comments) are ignored. A line
26
- * with no `:` is dropped with a warning.
27
- *
28
- * ── Hard invariants ─────────────────────────────────────────────────────────
29
- * - **`Authorization` can NEVER be set here.** Any `Authorization` key (case-
30
- * insensitive) in the parsed map is dropped with a warning — the Bearer is
31
- * owned by the auth layer and an extra header must never overwrite it. This
32
- * is the parse-side half of "Bearer always wins"; the merge-side half lives
33
- * in {@link mergeExtraHeaders}.
34
- * - Empty header NAMES are dropped. Empty VALUES are kept (a deliberately
35
- * blank header is a legitimate, if rare, gateway requirement).
36
- *
37
- * Pure + deterministic. `warn` collects non-fatal issues; the caller decides
38
- * whether to surface them (the server logs them once to stderr at startup).
39
- *
40
- * @license MIT
41
- */
42
- /** Canonical env-var name for the extra-headers feature. */
43
1
  export declare const ENV_EXTRA_HEADERS = "YTB_MCP_EXTRA_HEADERS";
44
2
  export interface ParsedExtraHeaders {
45
- /** The accepted header map (never contains `Authorization`). */
46
3
  readonly headers: Record<string, string>;
47
- /** Non-fatal issues (dropped lines, forbidden keys, bad JSON shape). */
48
4
  readonly warnings: readonly string[];
49
5
  }
50
- /**
51
- * Parse `YTB_MCP_EXTRA_HEADERS` from `env` (default `process.env`). Returns an
52
- * empty map (no warnings) when the var is unset/blank.
53
- */
54
6
  export declare function parseExtraHeaders(env?: NodeJS.ProcessEnv): ParsedExtraHeaders;
55
- /**
56
- * Merge extra headers UNDER an existing header set so the caller's headers
57
- * (which always include `Authorization: Bearer …`) win on collision. Extra
58
- * headers fill gaps; they never overwrite. Case-insensitive collision check so
59
- * a `authorization` extra can never shadow a real `Authorization`.
60
- *
61
- * @param base Authoritative headers (Bearer, Accept, Content-Type, If-Match…).
62
- * @param extra Parsed extra headers to merge underneath `base`.
63
- * @returns A fresh record; inputs are not mutated.
64
- */
65
7
  export declare function mergeExtraHeaders(base: Record<string, string>, extra: Record<string, string>): Record<string, string>;
66
8
  //# sourceMappingURL=extra-headers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extra-headers.d.ts","sourceRoot":"","sources":["../../src/net/extra-headers.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,4DAA4D;AAC5D,eAAO,MAAM,iBAAiB,0BAA0B,CAAC;AAKzD,MAAM,WAAW,kBAAkB;IAC/B,gEAAgE;IAChE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,wEAAwE;IACxE,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAwED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,kBAAkB,CAiB1F;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAaxB"}
1
+ {"version":3,"file":"extra-headers.d.ts","sourceRoot":"","sources":["../../src/net/extra-headers.ts"],"names":[],"mappings":"AA6CA,eAAO,MAAM,iBAAiB,0BAA0B,CAAC;AAKzD,MAAM,WAAW,kBAAkB;IAE/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEzC,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AA4ED,wBAAgB,iBAAiB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,kBAAkB,CAiB1F;AAYD,wBAAgB,iBAAiB,CAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC5B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAaxB"}
@@ -1,54 +1,8 @@
1
- // packages/mcp/src/net/extra-headers.ts
2
- /**
3
- * Parse `YTB_MCP_EXTRA_HEADERS` into a header map that is merged into EVERY
4
- * outbound request on BOTH transports (fat-mode {@link RestClient} and
5
- * proxy-mode `StreamableHTTPClientTransport`).
6
- *
7
- * Why this exists (customer gap #14): a WordPress/Joomla site fronted by HTTP
8
- * Basic-Auth, a WAF cookie, or a custom required header (e.g. a corporate
9
- * gateway secret) cannot be reached — the only header we ever send is
10
- * `Authorization: Bearer …`. This env var lets the operator attach the extra
11
- * header(s) the gateway demands WITHOUT us inventing per-provider knobs.
12
- *
13
- * ── Accepted formats (auto-detected) ───────────────────────────────────────
14
- * The value is read as ONE of two shapes, in this precedence:
15
- *
16
- * 1. **JSON object** — `{"X-WAF-Token":"abc","Cookie":"sid=42"}`.
17
- * Used when the trimmed value starts with `{` AND parses as a non-array
18
- * object. Non-string values are coerced via String(); null/array values
19
- * are dropped (with a warning).
20
- *
21
- * 2. **`Name: value` lines** — one header per line, first `:` splits:
22
- *
23
- * X-WAF-Token: abc
24
- * Cookie: sid=42
25
- *
26
- * Blank lines and lines starting with `#` (comments) are ignored. A line
27
- * with no `:` is dropped with a warning.
28
- *
29
- * ── Hard invariants ─────────────────────────────────────────────────────────
30
- * - **`Authorization` can NEVER be set here.** Any `Authorization` key (case-
31
- * insensitive) in the parsed map is dropped with a warning — the Bearer is
32
- * owned by the auth layer and an extra header must never overwrite it. This
33
- * is the parse-side half of "Bearer always wins"; the merge-side half lives
34
- * in {@link mergeExtraHeaders}.
35
- * - Empty header NAMES are dropped. Empty VALUES are kept (a deliberately
36
- * blank header is a legitimate, if rare, gateway requirement).
37
- *
38
- * Pure + deterministic. `warn` collects non-fatal issues; the caller decides
39
- * whether to surface them (the server logs them once to stderr at startup).
40
- *
41
- * @license MIT
42
- */
43
- /** Canonical env-var name for the extra-headers feature. */
44
1
  export const ENV_EXTRA_HEADERS = 'YTB_MCP_EXTRA_HEADERS';
45
- /** Header names that may never be supplied via the extra-headers env var. */
46
2
  const FORBIDDEN_HEADER_NAMES = new Set(['authorization']);
47
- /** Is `name` a header we refuse to let the env var set? Case-insensitive. */
48
3
  function isForbidden(name) {
49
4
  return FORBIDDEN_HEADER_NAMES.has(name.trim().toLowerCase());
50
5
  }
51
- /** Coerce a JSON value to a string, or null when it cannot sanely become one. */
52
6
  function coerceValue(value) {
53
7
  if (typeof value === 'string')
54
8
  return value;
@@ -56,7 +10,6 @@ function coerceValue(value) {
56
10
  return String(value);
57
11
  return null;
58
12
  }
59
- /** Parse the JSON-object form. Returns null when `raw` is not a JSON object. */
60
13
  function parseJsonObject(raw, warnings) {
61
14
  let parsed;
62
15
  try {
@@ -88,7 +41,6 @@ function parseJsonObject(raw, warnings) {
88
41
  }
89
42
  return out;
90
43
  }
91
- /** Parse the `Name: value` line form. */
92
44
  function parseLines(raw, warnings) {
93
45
  const out = {};
94
46
  for (const lineRaw of raw.split(/\r?\n/)) {
@@ -114,44 +66,25 @@ function parseLines(raw, warnings) {
114
66
  }
115
67
  return out;
116
68
  }
117
- /**
118
- * Parse `YTB_MCP_EXTRA_HEADERS` from `env` (default `process.env`). Returns an
119
- * empty map (no warnings) when the var is unset/blank.
120
- */
121
69
  export function parseExtraHeaders(env = process.env) {
122
70
  const raw = (env[ENV_EXTRA_HEADERS] ?? '').trim();
123
71
  if (raw === '') {
124
72
  return { headers: {}, warnings: [] };
125
73
  }
126
74
  const warnings = [];
127
- // JSON-object form wins when the value looks like an object literal.
128
75
  if (raw.startsWith('{')) {
129
76
  const obj = parseJsonObject(raw, warnings);
130
77
  if (obj !== null) {
131
78
  return { headers: obj, warnings };
132
79
  }
133
- // Looked like JSON but didn't parse — fall back to line-parsing rather
134
- // than silently dropping everything, and say so.
135
80
  warnings.push(`${ENV_EXTRA_HEADERS}: value started with "{" but is not valid JSON — falling back to "Name: value" line parsing.`);
136
81
  }
137
82
  return { headers: parseLines(raw, warnings), warnings };
138
83
  }
139
- /**
140
- * Merge extra headers UNDER an existing header set so the caller's headers
141
- * (which always include `Authorization: Bearer …`) win on collision. Extra
142
- * headers fill gaps; they never overwrite. Case-insensitive collision check so
143
- * a `authorization` extra can never shadow a real `Authorization`.
144
- *
145
- * @param base Authoritative headers (Bearer, Accept, Content-Type, If-Match…).
146
- * @param extra Parsed extra headers to merge underneath `base`.
147
- * @returns A fresh record; inputs are not mutated.
148
- */
149
84
  export function mergeExtraHeaders(base, extra) {
150
85
  const lowerBaseKeys = new Set(Object.keys(base).map((k) => k.toLowerCase()));
151
86
  const merged = {};
152
- // Extra first, so a same-name base key overwrites it below.
153
87
  for (const [name, value] of Object.entries(extra)) {
154
- // Never let an extra header shadow a base header (esp. Authorization).
155
88
  if (lowerBaseKeys.has(name.toLowerCase()))
156
89
  continue;
157
90
  merged[name] = value;
@@ -1 +1 @@
1
- {"version":3,"file":"extra-headers.js","sourceRoot":"","sources":["../../src/net/extra-headers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extra-headers.js","sourceRoot":"","sources":["../../src/net/extra-headers.ts"],"names":[],"mappings":"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"}
@@ -1,45 +1,14 @@
1
- /**
2
- * Classify a host as internal. A host is internal when ANY of:
3
- * - it is `localhost`,
4
- * - it is a private/loopback/link-local IPv4 or IPv6 literal,
5
- * - it ends in an internal DNS suffix (`.local`, `.internal`, …),
6
- * - it is a bare single-label hostname (no dot — an intranet short name).
7
- *
8
- * A normal public FQDN (`example.com`, `acme.co.uk`) is NOT internal.
9
- */
10
1
  export declare function isInternalHost(rawHost: string): boolean;
11
- /** Extract a lowercased, bracket-stripped host from a URL string, or null. */
12
2
  export declare function hostFromUrl(rawUrl: string): string | null;
13
3
  export interface NoProxyDerivation {
14
- /** True when this call would change NO_PROXY (host added). */
15
4
  readonly changed: boolean;
16
- /**
17
- * The effective NO_PROXY value to use. When `changed` is false this is the
18
- * input value verbatim (or undefined when it was unset and stays unset).
19
- */
20
5
  readonly noProxy: string | undefined;
21
- /** The internal host that was added, or null when nothing was added. */
22
6
  readonly addedHost: string | null;
23
- /** Non-fatal reason when nothing was added (for an optional debug log). */
24
7
  readonly reason?: string;
25
8
  }
26
9
  export interface DeriveNoProxyInput {
27
- /** Source of env vars. */
28
10
  readonly env: NodeJS.ProcessEnv;
29
- /** The configured site URL (typically `YTB_MCP_SITE_URL`). */
30
11
  readonly siteUrl: string | undefined;
31
12
  }
32
- /**
33
- * Compute the NO_PROXY value to apply so an internal site host bypasses a
34
- * configured corporate proxy. Idempotent + non-clobbering:
35
- *
36
- * - No proxy configured → no change (the agent isn't installed anyway).
37
- * - `siteUrl` missing / unparseable / clearly public → no change.
38
- * - Host already present in NO_PROXY (case-insensitive) → no change.
39
- * - Otherwise → append the host to the existing operator NO_PROXY (preserved
40
- * verbatim, comma-joined), or seed NO_PROXY with just the host when unset.
41
- *
42
- * Pure: returns the value to write; the caller mutates `process.env`.
43
- */
44
13
  export declare function deriveNoProxyForInternalSite(input: DeriveNoProxyInput): NoProxyDerivation;
45
14
  //# sourceMappingURL=internal-host.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"internal-host.d.ts","sourceRoot":"","sources":["../../src/net/internal-host.ts"],"names":[],"mappings":"AAmEA;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAWvD;AAED,8EAA8E;AAC9E,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CASzD;AAeD,MAAM,WAAW,iBAAiB;IAC9B,8DAA8D;IAC9D,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,wEAAwE;IACxE,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,2EAA2E;IAC3E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAkB;IAC/B,0BAA0B;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IAChC,8DAA8D;IAC9D,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;CACxC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,kBAAkB,GAAG,iBAAiB,CAwBzF"}
1
+ {"version":3,"file":"internal-host.d.ts","sourceRoot":"","sources":["../../src/net/internal-host.ts"],"names":[],"mappings":"AA4EA,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAWvD;AAGD,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CASzD;AAeD,MAAM,WAAW,iBAAiB;IAE9B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAK1B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAErC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAElC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAkB;IAE/B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IAEhC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;CACxC;AAcD,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,kBAAkB,GAAG,iBAAiB,CAwBzF"}
@@ -1,30 +1,4 @@
1
- // packages/mcp/src/net/internal-host.ts
2
- /**
3
- * Classify a site host as internal vs public, and derive a NO_PROXY addition
4
- * for an internal host when a forward proxy is configured (customer gap #9).
5
- *
6
- * Why this exists: when a corporate `HTTP(S)_PROXY` is set, undici's
7
- * `EnvHttpProxyAgent` routes EVERYTHING through it — including traffic to an
8
- * intranet WordPress/Joomla that the proxy can't (or shouldn't) reach. The
9
- * `NO_PROXY` exception list fixes that, but only if the operator pre-set it.
10
- * A common customer-class failure: the proxy reaches the public internet fine,
11
- * but the internal CMS is direct-only (or vice-versa), and outbound MCP traffic
12
- * silently dies.
13
- *
14
- * We therefore classify the configured `YTB_MCP_SITE_URL` host and, when a
15
- * proxy is set AND the host is clearly internal, add it to the effective
16
- * NO_PROXY the agent reads. **Conservative by construction:** only RFC1918 /
17
- * loopback / link-local IPs, `.local` / `.internal` / `.intranet` suffixes, and
18
- * bare single-label hostnames (no dot) are treated as internal. A normal
19
- * public FQDN is NEVER routed to NO_PROXY.
20
- *
21
- * Pure + env-injectable so it is unit-testable offline. Never mutates input.
22
- *
23
- * @license MIT
24
- */
25
- /** Internal-by-convention DNS suffixes (RFC 6762 + common intranet TLDs). */
26
1
  const INTERNAL_SUFFIXES = ['.local', '.internal', '.intranet', '.lan', '.home.arpa'];
27
- /** Strip an `[…]` IPv6 bracket wrapper and a trailing `.` if present. */
28
2
  function normalizeHost(host) {
29
3
  let h = host.trim().toLowerCase();
30
4
  if (h.startsWith('[') && h.endsWith(']'))
@@ -33,7 +7,6 @@ function normalizeHost(host) {
33
7
  h = h.slice(0, -1);
34
8
  return h;
35
9
  }
36
- /** Is `host` an IPv4 literal in a private/loopback/link-local range? */
37
10
  function isPrivateIpv4(host) {
38
11
  const m = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/.exec(host);
39
12
  if (m === null)
@@ -43,46 +16,34 @@ function isPrivateIpv4(host) {
43
16
  return false;
44
17
  const [a, b] = octets;
45
18
  if (a === 10)
46
- return true; // 10.0.0.0/8
19
+ return true;
47
20
  if (a === 127)
48
- return true; // 127.0.0.0/8 loopback
21
+ return true;
49
22
  if (a === 192 && b === 168)
50
- return true; // 192.168.0.0/16
23
+ return true;
51
24
  if (a === 172 && b >= 16 && b <= 31)
52
- return true; // 172.16.0.0/12
25
+ return true;
53
26
  if (a === 169 && b === 254)
54
- return true; // 169.254.0.0/16 link-local
27
+ return true;
55
28
  return false;
56
29
  }
57
- /** Is `host` an IPv6 loopback / unique-local (fc00::/7) / link-local (fe80::/10)? */
58
30
  function isPrivateIpv6(host) {
59
31
  if (!host.includes(':'))
60
32
  return false;
61
33
  if (host === '::1')
62
- return true; // loopback
34
+ return true;
63
35
  const first = host.split(':')[0] ?? '';
64
36
  if (first === '')
65
- return false; // e.g. "::" unspecified — not a real site host
37
+ return false;
66
38
  const prefix = Number.parseInt(first, 16);
67
39
  if (Number.isNaN(prefix))
68
40
  return false;
69
- // fc00::/7 (unique-local) → first hextet 0xfc00–0xfdff.
70
41
  if (prefix >= 0xfc00 && prefix <= 0xfdff)
71
42
  return true;
72
- // fe80::/10 (link-local) → first hextet 0xfe80–0xfebf.
73
43
  if (prefix >= 0xfe80 && prefix <= 0xfebf)
74
44
  return true;
75
45
  return false;
76
46
  }
77
- /**
78
- * Classify a host as internal. A host is internal when ANY of:
79
- * - it is `localhost`,
80
- * - it is a private/loopback/link-local IPv4 or IPv6 literal,
81
- * - it ends in an internal DNS suffix (`.local`, `.internal`, …),
82
- * - it is a bare single-label hostname (no dot — an intranet short name).
83
- *
84
- * A normal public FQDN (`example.com`, `acme.co.uk`) is NOT internal.
85
- */
86
47
  export function isInternalHost(rawHost) {
87
48
  const host = normalizeHost(rawHost);
88
49
  if (host === '')
@@ -95,13 +56,10 @@ export function isInternalHost(rawHost) {
95
56
  return true;
96
57
  if (INTERNAL_SUFFIXES.some((s) => host.endsWith(s)))
97
58
  return true;
98
- // A bare hostname with no dot is an intranet short name (e.g. "wpserver").
99
- // IPv6 literals contain ":" and are handled above; guard against them here.
100
59
  if (!host.includes('.') && !host.includes(':'))
101
60
  return true;
102
61
  return false;
103
62
  }
104
- /** Extract a lowercased, bracket-stripped host from a URL string, or null. */
105
63
  export function hostFromUrl(rawUrl) {
106
64
  const url = rawUrl.trim();
107
65
  if (url === '')
@@ -114,29 +72,15 @@ export function hostFromUrl(rawUrl) {
114
72
  return null;
115
73
  }
116
74
  }
117
- /** Is any forward-proxy configured in `env`? */
118
75
  function hasProxyConfigured(env) {
119
76
  return Boolean(env.HTTPS_PROXY ?? env.https_proxy ?? env.HTTP_PROXY ?? env.http_proxy);
120
77
  }
121
- /** Split a NO_PROXY string into trimmed, lowercased, non-empty entries. */
122
78
  function splitNoProxy(value) {
123
79
  return value
124
80
  .split(',')
125
81
  .map((e) => e.trim().toLowerCase())
126
82
  .filter((e) => e !== '');
127
83
  }
128
- /**
129
- * Compute the NO_PROXY value to apply so an internal site host bypasses a
130
- * configured corporate proxy. Idempotent + non-clobbering:
131
- *
132
- * - No proxy configured → no change (the agent isn't installed anyway).
133
- * - `siteUrl` missing / unparseable / clearly public → no change.
134
- * - Host already present in NO_PROXY (case-insensitive) → no change.
135
- * - Otherwise → append the host to the existing operator NO_PROXY (preserved
136
- * verbatim, comma-joined), or seed NO_PROXY with just the host when unset.
137
- *
138
- * Pure: returns the value to write; the caller mutates `process.env`.
139
- */
140
84
  export function deriveNoProxyForInternalSite(input) {
141
85
  const { env, siteUrl } = input;
142
86
  const current = env.NO_PROXY ?? env.no_proxy;
@@ -154,8 +98,6 @@ export function deriveNoProxyForInternalSite(input) {
154
98
  if (existing.includes(host)) {
155
99
  return { changed: false, noProxy: current, addedHost: null, reason: 'host already in NO_PROXY' };
156
100
  }
157
- // Append, preserving the operator's existing entries verbatim (original
158
- // casing/order) — we only add the host at the end.
159
101
  const next = current !== undefined && current.trim() !== ''
160
102
  ? `${current},${host}`
161
103
  : host;
@@ -1 +1 @@
1
- {"version":3,"file":"internal-host.js","sourceRoot":"","sources":["../../src/net/internal-host.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal-host.js","sourceRoot":"","sources":["../../src/net/internal-host.ts"],"names":[],"mappings":"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"}
@@ -1,47 +1,10 @@
1
1
  import { type Dispatcher } from 'undici';
2
- /**
3
- * Injection seam for tests — production uses the real undici functions + env.
4
- */
5
2
  export interface ProxyDispatcherDeps {
6
- /** Defaults to `process.env`. Read for HTTP(S)_PROXY presence. */
7
3
  env?: NodeJS.ProcessEnv;
8
- /** Defaults to undici's {@link undiciSetGlobalDispatcher}. */
9
4
  setGlobalDispatcher?: (dispatcher: Dispatcher) => void;
10
- /** Defaults to `() => new EnvHttpProxyAgent()`. */
11
5
  makeEnvHttpProxyAgent?: () => Dispatcher;
12
- /** Defaults to `console.error`. */
13
6
  stderr?: (message: string) => void;
14
7
  }
15
- /**
16
- * Is any forward-proxy configured in the environment? Exported so the setup
17
- * wizard's P0.1 default-on CA bake can reuse the SAME definition of "a corporate
18
- * proxy is present" (one source of truth — no drift between the dispatcher and
19
- * the installer).
20
- */
21
8
  export declare function hasProxyConfigured(env: NodeJS.ProcessEnv): boolean;
22
- /**
23
- * Install a process-global undici dispatcher that honors the enterprise
24
- * `HTTP_PROXY` / `HTTPS_PROXY` / `NO_PROXY` environment variables at request
25
- * time (undici's {@link EnvHttpProxyAgent}).
26
- *
27
- * Why this exists: Node's global `fetch` only auto-honors proxy env vars from
28
- * **Node 24** (`NODE_USE_ENV_PROXY`). On the Node 18–23 floor this package
29
- * supports, an enterprise forward/auth proxy is otherwise ignored and outbound
30
- * MCP traffic silently fails. Node's global `fetch` reads the global dispatcher,
31
- * and so does the MCP SDK's `StreamableHTTPClientTransport` (proxy mode) and the
32
- * fat-mode `RestClient` — so one global dispatcher covers every outbound call.
33
- *
34
- * Installed ONLY when a forward proxy is actually configured
35
- * (`HTTP_PROXY`/`HTTPS_PROXY`). With no proxy env, the default dispatcher (a
36
- * direct connection) is already correct, so we skip — this also avoids undici's
37
- * `EnvHttpProxyAgent is experimental` startup warning for the common, direct
38
- * case. Corporate TLS-inspection root CAs are handled separately by Node's
39
- * native `NODE_EXTRA_CA_CERTS` (undici's default connector honors it).
40
- *
41
- * Never throws: a failure to install (exotic runtime, frozen global) degrades
42
- * to a stderr warning and a direct connection, returning `false`.
43
- *
44
- * @returns `true` if the dispatcher was installed, `false` if skipped/degraded.
45
- */
46
9
  export declare function installGlobalProxyDispatcher(deps?: ProxyDispatcherDeps): boolean;
47
10
  //# sourceMappingURL=proxy-dispatcher.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"proxy-dispatcher.d.ts","sourceRoot":"","sources":["../../src/net/proxy-dispatcher.ts"],"names":[],"mappings":"AACA,OAAO,EAAuE,KAAK,UAAU,EAAE,MAAM,QAAQ,CAAC;AAI9G;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,kEAAkE;IAClE,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,8DAA8D;IAC9D,mBAAmB,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;IACvD,mDAAmD;IACnD,qBAAqB,CAAC,EAAE,MAAM,UAAU,CAAC;IACzC,mCAAmC;IACnC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACtC;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAElE;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,GAAE,mBAAwB,GAAG,OAAO,CAkCpF"}
1
+ {"version":3,"file":"proxy-dispatcher.d.ts","sourceRoot":"","sources":["../../src/net/proxy-dispatcher.ts"],"names":[],"mappings":"AACA,OAAO,EAAuE,KAAK,UAAU,EAAE,MAAM,QAAQ,CAAC;AAO9G,MAAM,WAAW,mBAAmB;IAEhC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IAExB,mBAAmB,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;IAEvD,qBAAqB,CAAC,EAAE,MAAM,UAAU,CAAC;IAEzC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACtC;AAQD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAElE;AA0BD,wBAAgB,4BAA4B,CAAC,IAAI,GAAE,mBAAwB,GAAG,OAAO,CAkCpF"}
@@ -1,57 +1,18 @@
1
- // packages/mcp/src/net/proxy-dispatcher.ts
2
1
  import { EnvHttpProxyAgent, setGlobalDispatcher as undiciSetGlobalDispatcher } from 'undici';
3
2
  import { deriveNoProxyForInternalSite } from './internal-host.js';
4
- /**
5
- * Is any forward-proxy configured in the environment? Exported so the setup
6
- * wizard's P0.1 default-on CA bake can reuse the SAME definition of "a corporate
7
- * proxy is present" (one source of truth — no drift between the dispatcher and
8
- * the installer).
9
- */
10
3
  export function hasProxyConfigured(env) {
11
4
  return Boolean(env.HTTPS_PROXY ?? env.https_proxy ?? env.HTTP_PROXY ?? env.http_proxy);
12
5
  }
13
- /**
14
- * Install a process-global undici dispatcher that honors the enterprise
15
- * `HTTP_PROXY` / `HTTPS_PROXY` / `NO_PROXY` environment variables at request
16
- * time (undici's {@link EnvHttpProxyAgent}).
17
- *
18
- * Why this exists: Node's global `fetch` only auto-honors proxy env vars from
19
- * **Node 24** (`NODE_USE_ENV_PROXY`). On the Node 18–23 floor this package
20
- * supports, an enterprise forward/auth proxy is otherwise ignored and outbound
21
- * MCP traffic silently fails. Node's global `fetch` reads the global dispatcher,
22
- * and so does the MCP SDK's `StreamableHTTPClientTransport` (proxy mode) and the
23
- * fat-mode `RestClient` — so one global dispatcher covers every outbound call.
24
- *
25
- * Installed ONLY when a forward proxy is actually configured
26
- * (`HTTP_PROXY`/`HTTPS_PROXY`). With no proxy env, the default dispatcher (a
27
- * direct connection) is already correct, so we skip — this also avoids undici's
28
- * `EnvHttpProxyAgent is experimental` startup warning for the common, direct
29
- * case. Corporate TLS-inspection root CAs are handled separately by Node's
30
- * native `NODE_EXTRA_CA_CERTS` (undici's default connector honors it).
31
- *
32
- * Never throws: a failure to install (exotic runtime, frozen global) degrades
33
- * to a stderr warning and a direct connection, returning `false`.
34
- *
35
- * @returns `true` if the dispatcher was installed, `false` if skipped/degraded.
36
- */
37
6
  export function installGlobalProxyDispatcher(deps = {}) {
38
7
  const env = deps.env ?? process.env;
39
8
  if (!hasProxyConfigured(env)) {
40
- // No proxy to honor — leave the default (direct) dispatcher in place.
41
9
  return false;
42
10
  }
43
11
  const setDispatcher = deps.setGlobalDispatcher ?? undiciSetGlobalDispatcher;
44
12
  const makeAgent = deps.makeEnvHttpProxyAgent ?? (() => new EnvHttpProxyAgent());
45
13
  const warn = deps.stderr ?? ((message) => console.error(message));
46
- // customer gap #9 — when the configured site is INTERNAL (RFC1918 / .local /
47
- // bare hostname / loopback), make sure its host is in NO_PROXY so intranet
48
- // traffic bypasses the corporate proxy. Idempotent + non-clobbering: the
49
- // operator's NO_PROXY is preserved verbatim, the host is only appended.
50
- // We mutate `env` BEFORE constructing the agent because EnvHttpProxyAgent
51
- // snapshots NO_PROXY at construction. Public hosts are never touched.
52
14
  const noProxy = deriveNoProxyForInternalSite({ env, siteUrl: env.YTB_MCP_SITE_URL });
53
15
  if (noProxy.changed && noProxy.noProxy !== undefined) {
54
- // Set BOTH cases so undici reads it regardless of which it prefers.
55
16
  env.NO_PROXY = noProxy.noProxy;
56
17
  env.no_proxy = noProxy.noProxy;
57
18
  warn(`[yt-builder-mcp] internal site host "${noProxy.addedHost ?? ''}" added to NO_PROXY so it bypasses the configured proxy.`);
@@ -62,7 +23,6 @@ export function installGlobalProxyDispatcher(deps = {}) {
62
23
  }
63
24
  catch (err) {
64
25
  const message = err instanceof Error ? err.message : String(err);
65
- // stderr only — stdout is the JSON-RPC channel in stdio transport.
66
26
  warn(`[yt-builder-mcp] proxy dispatcher init failed (continuing with a direct connection): ${message}`);
67
27
  return false;
68
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"proxy-dispatcher.js","sourceRoot":"","sources":["../../src/net/proxy-dispatcher.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,IAAI,yBAAyB,EAAmB,MAAM,QAAQ,CAAC;AAE9G,OAAO,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AAgBlE;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAsB;IACrD,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;AAC3F,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,4BAA4B,CAAC,OAA4B,EAAE;IACvE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACpC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,sEAAsE;QACtE,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,IAAI,yBAAyB,CAAC;IAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,IAAI,CAAC,GAAe,EAAE,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;IAC5F,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,OAAe,EAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAEhF,6EAA6E;IAC7E,2EAA2E;IAC3E,yEAAyE;IACzE,wEAAwE;IACxE,0EAA0E;IAC1E,sEAAsE;IACtE,MAAM,OAAO,GAAG,4BAA4B,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACrF,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACnD,oEAAoE;QACpE,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,wCAAwC,OAAO,CAAC,SAAS,IAAI,EAAE,0DAA0D,CAAC,CAAC;IACpI,CAAC;IAED,IAAI,CAAC;QACD,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC;IAChB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,mEAAmE;QACnE,IAAI,CAAC,wFAAwF,OAAO,EAAE,CAAC,CAAC;QACxG,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"proxy-dispatcher.js","sourceRoot":"","sources":["../../src/net/proxy-dispatcher.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,IAAI,yBAAyB,EAAmB,MAAM,QAAQ,CAAC;AAE9G,OAAO,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AAsBlE,MAAM,UAAU,kBAAkB,CAAC,GAAsB;IACrD,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;AAC3F,CAAC;AA0BD,MAAM,UAAU,4BAA4B,CAAC,OAA4B,EAAE;IACvE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACpC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC;QAE3B,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,IAAI,yBAAyB,CAAC;IAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,IAAI,CAAC,GAAe,EAAE,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;IAC5F,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,OAAe,EAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAQhF,MAAM,OAAO,GAAG,4BAA4B,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACrF,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAEnD,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,wCAAwC,OAAO,CAAC,SAAS,IAAI,EAAE,0DAA0D,CAAC,CAAC;IACpI,CAAC;IAED,IAAI,CAAC;QACD,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC;IAChB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAEjE,IAAI,CAAC,wFAAwF,OAAO,EAAE,CAAC,CAAC;QACxG,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC"}
@@ -0,0 +1,53 @@
1
+ import { type CacheReport, type ExcerptResult } from './public-page-report.js';
2
+ export { DEFAULT_EXCERPT_CHARS, DEFAULT_TIMEOUT_MS, MAX_BODY_BYTES, MAX_EXCERPT_CHARS, makeExcerpt, readCacheReport, type CacheReport, type CacheVerdict, type ExcerptResult, } from './public-page-report.js';
3
+ export type RefusalCode = 'invalid_url' | 'unsupported_scheme' | 'credentials_in_url' | 'foreign_origin';
4
+ export type UrlCheck = {
5
+ readonly ok: true;
6
+ readonly url: URL;
7
+ readonly siteOrigin: string;
8
+ } | {
9
+ readonly ok: false;
10
+ readonly code: RefusalCode;
11
+ readonly message: string;
12
+ readonly siteOrigin: string | null;
13
+ };
14
+ export declare function checkSameSiteUrl(requestedUrl: string, configuredSiteUrl: string): UrlCheck;
15
+ export interface PublicFetchInput {
16
+ readonly requestedUrl: string;
17
+ readonly configuredSiteUrl: string;
18
+ readonly expect?: string | undefined;
19
+ readonly excerptChars?: number | undefined;
20
+ readonly timeoutMs?: number | undefined;
21
+ readonly fetchImpl?: typeof fetch | undefined;
22
+ }
23
+ export interface PublicFetchRefused {
24
+ readonly outcome: 'refused';
25
+ readonly code: RefusalCode;
26
+ readonly message: string;
27
+ readonly siteOrigin: string | null;
28
+ }
29
+ export interface PublicFetchFailed {
30
+ readonly outcome: 'failed';
31
+ readonly code: 'redirect_off_site' | 'timeout' | 'network_error';
32
+ readonly message: string;
33
+ readonly siteOrigin: string;
34
+ readonly redirectTarget?: string;
35
+ }
36
+ export interface PublicFetchDelivered {
37
+ readonly outcome: 'delivered';
38
+ readonly siteOrigin: string;
39
+ readonly httpStatus: number;
40
+ readonly ok: boolean;
41
+ readonly contentType: string | null;
42
+ readonly htmlBytes: number;
43
+ readonly bodyComplete: boolean;
44
+ readonly title: string | null;
45
+ readonly excerpt: ExcerptResult;
46
+ readonly expectFound: boolean | null;
47
+ readonly expectOccurrences: number | null;
48
+ readonly cache: CacheReport;
49
+ readonly elapsedMs: number;
50
+ }
51
+ export type PublicFetchResult = PublicFetchRefused | PublicFetchFailed | PublicFetchDelivered;
52
+ export declare function fetchPublicPage(input: PublicFetchInput): Promise<PublicFetchResult>;
53
+ //# sourceMappingURL=public-fetch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public-fetch.d.ts","sourceRoot":"","sources":["../../src/net/public-fetch.ts"],"names":[],"mappings":"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"}