@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,43 +1,10 @@
1
- /**
2
- * Phase 3 — `yootheme_builder_use_site` L1 tool.
3
- *
4
- * Runtime active-site SWITCH. The multi-site analogue of api-mapper's
5
- * `apimapper_use_profile`: it changes which configured site subsequent
6
- * tool calls target by default, then (unless `probe: false`) verifies
7
- * the new site is reachable.
8
- *
9
- * Why a tool (and not just the `site_id` param on every call):
10
- * - Maria-the-Claude-Desktop-user works in long conversations against
11
- * ONE client site at a time. Re-passing `site_id` on every call is
12
- * error-prone. `sites_list` + `use_site` mirror the
13
- * `list_profiles` + `use_profile` flow she already knows from
14
- * api-mapper: discover, switch once, then work.
15
- *
16
- * How it reuses the existing engine (NO new multi-site machinery):
17
- * - The {@link SiteRegistry} stays immutable; the switch moves the
18
- * {@link ClientPool}'s in-memory active-site override
19
- * (`setActiveSite`). `resolve(undefined)` consults that override
20
- * before the registry default. Unknown id → `UnknownSiteError`,
21
- * surfaced as a structured `code: 'unknown_site'` error via the
22
- * shared `resolveSiteOrError` helper (so the wording matches every
23
- * other site-bound tool). The pointer never moves on a bad switch.
24
- * - The reachability check reuses {@link probeSite} (/health + /etag),
25
- * the SAME probe `sites_test` and the CLI run.
26
- *
27
- * Soft-vs-hard contract (mirrors `apimapper_use_profile`):
28
- * - An UNKNOWN site is a HARD error (pointer unchanged).
29
- * - A reachable-but-degraded site (probe red) is a SOFT warning: the
30
- * activation still succeeds and the pointer moves, because the user
31
- * explicitly asked to switch — the probe is diagnostic, not a gate.
32
- * `probe: false` skips the network round-trip entirely (offline
33
- * activation).
34
- *
35
- * @license MIT
36
- */
37
1
  import { detailResult } from '@getimo/mcp-toolkit';
38
2
  import { z } from 'zod';
3
+ import { PRODUCT_NAME } from '../../product-name.js';
39
4
  import { defineTool, mutating, structuredResult, withSiteMeta, } from '../../tools/tool-builder.js';
40
5
  import { resolveSiteOrError } from '../../tools/pool-resolve-helper.js';
6
+ import { pluginFloorError, versionSkewNotice } from '../../compat-floor.js';
7
+ import { PACKAGE_VERSION } from '../../package-version.js';
41
8
  import { probeSite } from '../probe.js';
42
9
  const USE_SITE_OUTPUT_SCHEMA = z.object({
43
10
  activated: z.boolean(),
@@ -56,42 +23,19 @@ const USE_SITE_OUTPUT_SCHEMA = z.object({
56
23
  .optional(),
57
24
  note: z.string().optional(),
58
25
  warnings: z.array(z.string()).optional(),
59
- // F178: every switch echoes the process-wide-default caveat so the
60
- // agent is reminded that concurrent clients of the same stdio server
61
- // share this pointer.
62
26
  concurrency_warning: z.string().optional(),
63
27
  });
64
- /**
65
- * F178 — the constant caveat echoed on every `use_site` switch. The
66
- * active-site default lives in process memory (`ClientPool.activeOverride`)
67
- * and a single stdio server process is shared by every MCP client that
68
- * connected to it. So when client A switches, client B's NEXT call that
69
- * omits `site_id` silently inherits A's choice. The only isolation
70
- * guarantee is passing `site_id` explicitly per call.
71
- */
72
28
  const CONCURRENCY_WARNING = 'This sets a PROCESS-WIDE default: every concurrent client sharing this '
73
29
  + 'MCP server process inherits it on calls that omit `site_id`. For '
74
30
  + 'isolation between parallel agents, pass `site_id` explicitly on each '
75
31
  + 'tool call instead of relying on this shared switch.';
76
- /**
77
- * Build the Phase 3 `yootheme_builder_use_site` tool.
78
- *
79
- * Signature accepts the {@link ClientPool} directly — the switch lives
80
- * on the pool (`setActiveSite`), and `resolveSiteOrError(pool, site_id)`
81
- * validates the id + yields the `{client, site}` bundle for the probe.
82
- */
83
32
  export function buildUseSiteTool(pool) {
84
33
  return defineTool({
85
34
  name: 'yootheme_builder_use_site',
86
- description: 'Switch the ACTIVE site for this multi-site session. After this call, ' +
87
- 'every tool that omits `site_id` targets the site you picked here. NOTE: ' +
88
- 'this default is PROCESS-WIDE concurrent clients sharing this MCP server ' +
89
- 'inherit it; pass `site_id` per call for isolation between parallel agents. ' +
90
- 'Runs a /health + /etag probe by default; pass `probe: false` to switch ' +
91
- 'offline. A degraded site is a soft warning (the switch still happens). ' +
92
- '`site_id` is REQUIRED. Keywords: switch/change/set active/target site, ' +
93
- 'select installation, use profile. Use yootheme_builder_sites_list first ' +
94
- 'to find IDs.',
35
+ description: 'Switch the ACTIVE site for this session subsequent calls that omit `site_id` ' +
36
+ 'target it. NOTE: this default is PROCESS-WIDE concurrent clients sharing this ' +
37
+ 'MCP server inherit it; pass `site_id` per call for isolation. Runs a /health + ' +
38
+ '/etag probe by default; `probe:false` switches offline. `site_id` is REQUIRED.',
95
39
  inputSchema: {
96
40
  site_id: z
97
41
  .string()
@@ -110,20 +54,11 @@ export function buildUseSiteTool(pool) {
110
54
  outputSchema: USE_SITE_OUTPUT_SCHEMA,
111
55
  annotations: mutating('Sites — Switch active'),
112
56
  handler: async ({ site_id, probe = true }) => {
113
- // 1. Validate the id through the shared resolver. Unknown /
114
- // no-default errors come back as structured ToolResults
115
- // (HARD error). The pointer has NOT moved yet, so a bad id
116
- // leaves the session on its previous active site.
117
57
  const r = await resolveSiteOrError(pool, site_id);
118
58
  if (!r.ok)
119
59
  return r.error;
120
60
  const { client, site } = r;
121
- // 2. Move the in-memory override. `setActiveSite` re-checks
122
- // the id exists (defense-in-depth) and throws
123
- // UnknownSiteError otherwise — but step 1 already
124
- // guaranteed it, so this is a no-throw in practice.
125
61
  pool.setActiveSite(site.id);
126
- // 3. Offline path — skip the probe entirely.
127
62
  if (!probe) {
128
63
  const payload = {
129
64
  activated: true,
@@ -137,8 +72,6 @@ export function buildUseSiteTool(pool) {
137
72
  const detail = detailResult({ ...buildUseSiteDetail(payload), includeMeta: false });
138
73
  return withSiteMeta(structuredResult(detail, payload), site);
139
74
  }
140
- // 4. Probe the newly-active site. A failing probe is a SOFT
141
- // warning — the switch already happened in step 2.
142
75
  const probeResult = await probeSite(client);
143
76
  const warnings = [];
144
77
  if (!(probeResult.plugin_reachable && probeResult.bearer_valid)) {
@@ -146,6 +79,19 @@ export function buildUseSiteTool(pool) {
146
79
  `green: ${probeResult.summary} The active site still points here — ` +
147
80
  'run yootheme_builder_sites_test for a detailed diagnosis.');
148
81
  }
82
+ if (probeResult.plugin_version !== undefined) {
83
+ const pairing = { plugin: probeResult.plugin_version, client: PACKAGE_VERSION };
84
+ const blocking = pluginFloorError(pairing);
85
+ if (blocking !== null) {
86
+ warnings.push(`Switched to "${site.id}". ${blocking.message}`);
87
+ }
88
+ else {
89
+ const skew = versionSkewNotice(pairing);
90
+ if (skew !== null) {
91
+ warnings.push(`Switched to "${site.id}". ${skew.message}`);
92
+ }
93
+ }
94
+ }
149
95
  const payload = {
150
96
  activated: true,
151
97
  active_site_id: site.id,
@@ -171,10 +117,6 @@ export function buildUseSiteTool(pool) {
171
117
  },
172
118
  });
173
119
  }
174
- /**
175
- * Render a detail-card body for the switch result. Group 1 = the active
176
- * site, Group 2 = the probe outcome (omitted when probe was skipped).
177
- */
178
120
  function buildUseSiteDetail(payload) {
179
121
  const activeEntries = [
180
122
  { key: 'active_site_id', label: 'Active site', value: payload.active_site_id, format: 'badge' },
@@ -198,6 +140,16 @@ function buildUseSiteDetail(payload) {
198
140
  entries: [{ key: 'note', label: 'Note', value: payload.note }],
199
141
  });
200
142
  }
201
- return { title: 'YT Builder MCP Switch Active Site', groups };
143
+ if (payload.warnings !== undefined && payload.warnings.length > 0) {
144
+ groups.push({
145
+ label: 'Warnings',
146
+ entries: payload.warnings.map((w, i) => ({
147
+ key: `warning_${i}`,
148
+ label: `Warning ${i + 1}`,
149
+ value: w,
150
+ })),
151
+ });
152
+ }
153
+ return { title: `${PRODUCT_NAME} — Switch Active Site`, groups };
202
154
  }
203
155
  //# sourceMappingURL=use-site.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-site.js","sourceRoot":"","sources":["../../../src/sites/tools/use-site.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-site.js","sourceRoot":"","sources":["../../../src/sites/tools/use-site.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { type ToolResult } from '../tools/tool-builder.js';
2
+ export declare function unknownNameResult(opts: {
3
+ argument: string;
4
+ value: string;
5
+ available: readonly string[];
6
+ code: string;
7
+ error: string;
8
+ hint: string;
9
+ }): ToolResult;
10
+ //# sourceMappingURL=unknown-name-result.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unknown-name-result.d.ts","sourceRoot":"","sources":["../../src/sites/unknown-name-result.ts"],"names":[],"mappings":"AAkCA,OAAO,EAAc,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAgBvE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CAChB,GAAG,UAAU,CAab"}
@@ -0,0 +1,13 @@
1
+ import { jsonResult } from '../tools/tool-builder.js';
2
+ export function unknownNameResult(opts) {
3
+ return jsonResult({
4
+ error: opts.error,
5
+ code: opts.code,
6
+ context: {
7
+ [opts.argument]: opts.value,
8
+ available: [...opts.available],
9
+ },
10
+ hint: opts.hint,
11
+ }, { isError: true });
12
+ }
13
+ //# sourceMappingURL=unknown-name-result.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unknown-name-result.js","sourceRoot":"","sources":["../../src/sites/unknown-name-result.ts"],"names":[],"mappings":"AAkCA,OAAO,EAAE,UAAU,EAAmB,MAAM,0BAA0B,CAAC;AAgBvE,MAAM,UAAU,iBAAiB,CAAC,IAOjC;IACG,OAAO,UAAU,CACb;QACI,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,OAAO,EAAE;YACL,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,KAAK;YAC3B,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;SACjC;QACD,IAAI,EAAE,IAAI,CAAC,IAAI;KAClB,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CACpB,CAAC;AACN,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { CompatNotice } from './compat-floor.js';
2
+ import type { SiteRegistry } from './sites/registry.js';
3
+ export declare const INSTRUCTIONS_MAX_BYTES = 6000;
4
+ export declare function buildInstructions(registry?: SiteRegistry, compatNotice?: CompatNotice): string;
5
+ export declare const VERSION_NOTE_HEADING = "## Version note";
6
+ export declare function prependConfigProblemNotice(instructions: string, configProblem: string | null, sitesAreSubstituted?: boolean): string;
7
+ //# sourceMappingURL=skill-instructions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-instructions.d.ts","sourceRoot":"","sources":["../src/skill-instructions.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAItD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGxD,eAAO,MAAM,sBAAsB,OAAO,CAAC;AA4D3C,wBAAgB,iBAAiB,CAC7B,QAAQ,CAAC,EAAE,YAAY,EACvB,YAAY,CAAC,EAAE,YAAY,GAC5B,MAAM,CASR;AAOD,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAoEtD,wBAAgB,0BAA0B,CACtC,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,MAAM,GAAG,IAAI,EAC5B,mBAAmB,UAAQ,GAC5B,MAAM,CAmBR"}
@@ -0,0 +1,85 @@
1
+ import { PRODUCT_NAME } from './product-name.js';
2
+ import { appendSitesBlock } from './skill-loader.js';
3
+ import { listTopics } from './skill-topics.js';
4
+ export const INSTRUCTIONS_MAX_BYTES = 6000;
5
+ const HEADER = `# ${PRODUCT_NAME}
6
+
7
+ > Independent third-party project. YOOtheme® is a registered trademark of
8
+ > YOOtheme GmbH. ${PRODUCT_NAME} is built by WootsUp (getimo productions) and is
9
+ > not affiliated with, endorsed by, or sponsored by YOOtheme.
10
+
11
+ Drive the YOOtheme Pro page builder on WordPress or Joomla 5/6: discover pages,
12
+ inspect layouts, add/move/bind elements, publish.
13
+ `;
14
+ const CRITICAL_RULES = `
15
+ ## Critical rules (read first)
16
+
17
+ - Most tools are first-class in tools/list; the rest route through the
18
+ gateways: yootheme_builder_advanced({ tool, arguments }) for writes,
19
+ yootheme_builder_advanced_read for pure inspection. The arg key is
20
+ \`arguments\` (NOT \`input\`). Omit \`arguments\` to discover a tool's schema.
21
+ - Call yootheme_builder_sites_list FIRST to discover site_ids; pass
22
+ site_id on every call or the default site is targeted.
23
+ - yootheme_builder_page_publish makes the LAYOUT live — it does NOT make a
24
+ draft page visible to visitors. CMS visibility is a separate switch:
25
+ yootheme_builder_pages_set_status({ post_id, status: "publish" }).
26
+ - Valid \`fields[]\` names differ PER TOOL. Call once without \`fields\` and
27
+ read \`available_fields\` from the response — do not guess.
28
+ - Before element_add, call yootheme_builder_element_type_get_schema: its
29
+ \`minimal_layout\` shows required children (e.g. button needs a button_item
30
+ child carrying content + link).
31
+ - Write calls need the \`etag\` from the latest read/write response; a stale
32
+ etag is refused with the current one in the error.
33
+ `;
34
+ function topicPointer() {
35
+ const topics = listTopics();
36
+ const partSlugs = new Set(topics.flatMap((t) => t.parts ?? []));
37
+ const bullets = topics
38
+ .filter((t) => !partSlugs.has(t.slug))
39
+ .map((t) => {
40
+ const parts = t.parts?.length ?? 0;
41
+ return `- \`${t.slug}\` — ${t.heading}${parts > 0 ? ` (${String(parts)} parts)` : ''}`;
42
+ })
43
+ .join('\n');
44
+ return `
45
+ ## Full guide, on demand
46
+
47
+ For any deeper topic call yootheme_builder_get_skill({ topic }) — without
48
+ \`topic\` it lists all topics. Available:
49
+
50
+ ${bullets}
51
+ `;
52
+ }
53
+ export function buildInstructions(registry, compatNotice) {
54
+ const core = HEADER + CRITICAL_RULES + versionNote(compatNotice) + topicPointer();
55
+ const withSites = registry === undefined ? core : appendSitesBlock(core, registry);
56
+ const withBlocking = prependBlockingNotice(withSites, compatNotice);
57
+ return prependConfigProblemNotice(withBlocking, registry?.configProblem ?? null, registry?.sitesAreSubstituted ?? false);
58
+ }
59
+ export const VERSION_NOTE_HEADING = '## Version note';
60
+ function versionNote(compatNotice) {
61
+ if (compatNotice === undefined)
62
+ return '';
63
+ if (compatNotice.kind === 'below_floor')
64
+ return '';
65
+ return `\n${VERSION_NOTE_HEADING}\n\n${compatNotice.message}\n`;
66
+ }
67
+ function prependBlockingNotice(instructions, compatNotice) {
68
+ if (compatNotice === undefined || compatNotice.kind !== 'below_floor')
69
+ return instructions;
70
+ return `> **STOP — this site cannot be driven until it is updated.**\n>\n> ${compatNotice.message}\n\n${instructions}`;
71
+ }
72
+ export function prependConfigProblemNotice(instructions, configProblem, sitesAreSubstituted = false) {
73
+ if (configProblem === null || configProblem === '')
74
+ return instructions;
75
+ return (`## Configuration problem\n\n${configProblem}\n\n`
76
+ + 'This configured connection was rejected at startup — see the reason above. '
77
+ + 'Fix it and restart this server.\n\n'
78
+ + (sitesAreSubstituted
79
+ ? 'While this stands, the site names below are a SUBSTITUTE and a call '
80
+ + 'that names one is refused. Call tools WITHOUT `site_id` — they run '
81
+ + 'against the substitute site, and `sites_list` shows which one.\n\n'
82
+ : '')
83
+ + `${instructions}`);
84
+ }
85
+ //# sourceMappingURL=skill-instructions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-instructions.js","sourceRoot":"","sources":["../src/skill-instructions.ts"],"names":[],"mappings":"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"}
@@ -1,111 +1,9 @@
1
- /**
2
- * Skill loader — Stream B1 (Skill-Distribution via MCP-Protocol).
3
- *
4
- * Reads the bundled SKILL.md once at module-load time and exposes it
5
- * so that:
6
- *
7
- * 1. `createServer` can pass the content as the `instructions` field
8
- * to `McpServer`. MCP-spec hosts (Claude Desktop, Cursor, …)
9
- * surface this string as auto-context after the `initialize`
10
- * handshake — Maria the Claude-Desktop user receives the skill
11
- * narrative without ever invoking a tool.
12
- *
13
- * 2. A `skill://yt-builder-mcp` resource can return the same content
14
- * on demand for hosts that ignore `instructions` but honor
15
- * `resources/list` + `resources/read`.
16
- *
17
- * Resolution layout (matches `install-skill.ts` + `build-mcpb.js`):
18
- *
19
- * packages/mcp/skills/yt-builder-mcp/SKILL.md
20
- *
21
- * When the file is compiled to `dist/skill-loader.js`, the same
22
- * relative `../skills/yt-builder-mcp/SKILL.md` resolves correctly
23
- * because the published npm tarball (and the MCPB stage) preserves the
24
- * `skills/` folder next to `dist/`.
25
- *
26
- * Read errors throw at module-init: a missing SKILL.md is a packaging
27
- * bug, not a recoverable runtime condition.
28
- *
29
- * W8 — `appendSitesBlock(skillContent, registry)` post-processor.
30
- * When the in-process {@link SiteRegistry} carries ≥1 configured
31
- * site, append a "Currently configured sites" appendix to the
32
- * instructions string so MCP hosts surface the live site roster
33
- * alongside the skill narrative. The appendix contains ONLY
34
- * safe-to-render metadata (site_id, label, platform hint/resolved,
35
- * url, default-flag) — bearer fields are NEVER touched. When the
36
- * registry has 0 sites the original skill content is returned
37
- * verbatim (no appendix, no separator).
38
- *
39
- * This is a pure-string post-processor; it does not touch the
40
- * on-disk SKILL.md. Per plan §W8 (line 919) the MCP `initialize`
41
- * response carries `instructions` as a single shot, so an AI client
42
- * restart is required for the appendix to refresh after a sites file
43
- * edit. The W9 CLI commands (add-site / remove-site) print a reminder.
44
- *
45
- * @license MIT
46
- */
47
1
  import type { SiteRegistry } from './sites/registry.js';
48
- /** Stable URI under which the skill resource is exposed via MCP `resources/*`. */
49
2
  export declare const SKILL_RESOURCE_URI = "skill://yt-builder-mcp";
50
- /** Human-readable resource name surfaced in `resources/list`. */
51
- export declare const SKILL_RESOURCE_NAME = "YT Builder MCP \u2014 Skill Guide";
52
- /** Short description for `resources/list` consumers. */
3
+ export declare const SKILL_RESOURCE_NAME = "MCP for YOOtheme Pro \u2014 Skill Guide";
53
4
  export declare const SKILL_RESOURCE_DESCRIPTION: string;
54
- /** MIME type for the SKILL.md payload. */
55
5
  export declare const SKILL_RESOURCE_MIME_TYPE = "text/markdown";
56
- /**
57
- * Load the bundled SKILL.md content. Cached after the first read.
58
- *
59
- * When `registry` is supplied AND it carries ≥1 site, the returned
60
- * string is the on-disk SKILL.md PLUS the W8 sites appendix (see
61
- * {@link appendSitesBlock}). When `registry` is omitted or empty, the
62
- * raw skill content is returned unchanged. The disk cache is shared
63
- * across calls — the appendix is recomputed each time so registry
64
- * mutations after the first load are reflected (within the same
65
- * process instance — the MCP `initialize` response only takes a
66
- * single-shot snapshot per session per plan §W8 line 919).
67
- *
68
- * @throws Error when the file is missing or unreadable (packaging bug).
69
- */
70
6
  export declare function loadSkillContent(registry?: SiteRegistry): string;
71
- /**
72
- * Append the W8 "Currently configured sites" block to a skill-content
73
- * string. When the registry is empty, returns the input verbatim — no
74
- * separator, no header, no trailing newline change.
75
- *
76
- * Output shape (per plan §W8 Z.904-917):
77
- * ```text
78
- * <skillContent>
79
- *
80
- * ---
81
- *
82
- * ## Currently configured sites (3)
83
- *
84
- * - `wp-acme` — Acme — Production · wordpress · https://acme.com · default
85
- * - `joomla-beta` — Beta — Staging · joomla · https://beta.example.com/joomla
86
- * - `wp-internal` — Internal staging · wordpress · https://internal.example.com
87
- *
88
- * Use `yootheme_builder_sites_list` to inspect this at runtime.
89
- * Pass `site_id: "<id>"` on any tool call to target a specific site;
90
- * omit it to use the default.
91
- * ```
92
- *
93
- * Per-row format (bullet):
94
- * `- \`<site_id>\` — <label or "(no label)"> · <platform> · <url><" · default"?>`
95
- *
96
- * The platform column prefers `platform_resolved` when the registry
97
- * has memoised a probe result for that site (peek-only — never
98
- * triggers a new probe), and falls back to `platform_hint` otherwise.
99
- *
100
- * Bearer fields (bearer / bearer_ref) are intentionally NEVER
101
- * referenced — only `site_id`, `url`, `platform_*`, `is_default`,
102
- * `label` from {@link SiteRowT}.
103
- */
104
7
  export declare function appendSitesBlock(skillContent: string, registry: SiteRegistry): string;
105
- /**
106
- * Reset the in-memory cache. Intended for tests only.
107
- *
108
- * @internal
109
- */
110
8
  export declare function __resetSkillCacheForTests(): void;
111
9
  //# sourceMappingURL=skill-loader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"skill-loader.d.ts","sourceRoot":"","sources":["../src/skill-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAMH,OAAO,KAAK,EAAE,YAAY,EAAY,MAAM,qBAAqB,CAAC;AAElE,kFAAkF;AAClF,eAAO,MAAM,kBAAkB,2BAA2B,CAAC;AAE3D,iEAAiE;AACjE,eAAO,MAAM,mBAAmB,sCAAiC,CAAC;AAElE,wDAAwD;AACxD,eAAO,MAAM,0BAA0B,QAEqC,CAAC;AAE7E,0CAA0C;AAC1C,eAAO,MAAM,wBAAwB,kBAAkB,CAAC;AAmBxD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,CAAC,EAAE,YAAY,GAAG,MAAM,CAShE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,gBAAgB,CAC5B,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,YAAY,GACvB,MAAM,CAkBR;AA0CD;;;;GAIG;AACH,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD"}
1
+ {"version":3,"file":"skill-loader.d.ts","sourceRoot":"","sources":["../src/skill-loader.ts"],"names":[],"mappings":"AAoDA,OAAO,KAAK,EAAE,YAAY,EAAY,MAAM,qBAAqB,CAAC;AAGlE,eAAO,MAAM,kBAAkB,2BAA2B,CAAC;AAG3D,eAAO,MAAM,mBAAmB,4CAAkC,CAAC;AAGnE,eAAO,MAAM,0BAA0B,QAI6B,CAAC;AAGrE,eAAO,MAAM,wBAAwB,kBAAkB,CAAC;AAiCxD,wBAAgB,gBAAgB,CAAC,QAAQ,CAAC,EAAE,YAAY,GAAG,MAAM,CAShE;AAmCD,wBAAgB,gBAAgB,CAC5B,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,YAAY,GACvB,MAAM,CAkBR;AA+CD,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD"}
@@ -1,89 +1,19 @@
1
- /**
2
- * Skill loader — Stream B1 (Skill-Distribution via MCP-Protocol).
3
- *
4
- * Reads the bundled SKILL.md once at module-load time and exposes it
5
- * so that:
6
- *
7
- * 1. `createServer` can pass the content as the `instructions` field
8
- * to `McpServer`. MCP-spec hosts (Claude Desktop, Cursor, …)
9
- * surface this string as auto-context after the `initialize`
10
- * handshake — Maria the Claude-Desktop user receives the skill
11
- * narrative without ever invoking a tool.
12
- *
13
- * 2. A `skill://yt-builder-mcp` resource can return the same content
14
- * on demand for hosts that ignore `instructions` but honor
15
- * `resources/list` + `resources/read`.
16
- *
17
- * Resolution layout (matches `install-skill.ts` + `build-mcpb.js`):
18
- *
19
- * packages/mcp/skills/yt-builder-mcp/SKILL.md
20
- *
21
- * When the file is compiled to `dist/skill-loader.js`, the same
22
- * relative `../skills/yt-builder-mcp/SKILL.md` resolves correctly
23
- * because the published npm tarball (and the MCPB stage) preserves the
24
- * `skills/` folder next to `dist/`.
25
- *
26
- * Read errors throw at module-init: a missing SKILL.md is a packaging
27
- * bug, not a recoverable runtime condition.
28
- *
29
- * W8 — `appendSitesBlock(skillContent, registry)` post-processor.
30
- * When the in-process {@link SiteRegistry} carries ≥1 configured
31
- * site, append a "Currently configured sites" appendix to the
32
- * instructions string so MCP hosts surface the live site roster
33
- * alongside the skill narrative. The appendix contains ONLY
34
- * safe-to-render metadata (site_id, label, platform hint/resolved,
35
- * url, default-flag) — bearer fields are NEVER touched. When the
36
- * registry has 0 sites the original skill content is returned
37
- * verbatim (no appendix, no separator).
38
- *
39
- * This is a pure-string post-processor; it does not touch the
40
- * on-disk SKILL.md. Per plan §W8 (line 919) the MCP `initialize`
41
- * response carries `instructions` as a single shot, so an AI client
42
- * restart is required for the appendix to refresh after a sites file
43
- * edit. The W9 CLI commands (add-site / remove-site) print a reminder.
44
- *
45
- * @license MIT
46
- */
47
1
  import { readFileSync } from 'node:fs';
48
2
  import { dirname, resolve } from 'node:path';
49
3
  import { fileURLToPath } from 'node:url';
50
- /** Stable URI under which the skill resource is exposed via MCP `resources/*`. */
4
+ import { PRODUCT_NAME } from './product-name.js';
51
5
  export const SKILL_RESOURCE_URI = 'skill://yt-builder-mcp';
52
- /** Human-readable resource name surfaced in `resources/list`. */
53
- export const SKILL_RESOURCE_NAME = 'YT Builder MCP Skill Guide';
54
- /** Short description for `resources/list` consumers. */
55
- export const SKILL_RESOURCE_DESCRIPTION = 'Workflow guide for driving the YOOtheme Pro page builder via this MCP server. ' +
56
- 'Auto-loaded as `instructions` at initialize; also fetchable on demand.';
57
- /** MIME type for the SKILL.md payload. */
6
+ export const SKILL_RESOURCE_NAME = `${PRODUCT_NAME} Skill Guide`;
7
+ export const SKILL_RESOURCE_DESCRIPTION = 'Full workflow guide for driving the YOOtheme Pro page builder via this MCP ' +
8
+ 'server. Only a short preamble is auto-loaded as `instructions` at initialize ' +
9
+ '(Design E1, 2026-08-10) fetch this resource, or call ' +
10
+ 'yootheme_builder_get_skill({ topic }), for the complete guide.';
58
11
  export const SKILL_RESOURCE_MIME_TYPE = 'text/markdown';
59
12
  const __dirname = dirname(fileURLToPath(import.meta.url));
60
- /**
61
- * Resolve the on-disk path to the bundled SKILL.md.
62
- *
63
- * Source-tree: packages/mcp/src/skill-loader.ts → ../skills/yt-builder-mcp/SKILL.md
64
- * Built tarball: packages/mcp/dist/skill-loader.js → ../skills/yt-builder-mcp/SKILL.md
65
- *
66
- * Both layouts work because `dist/` and `src/` are siblings of
67
- * `skills/` under the package root.
68
- */
69
13
  function resolveSkillPath() {
70
14
  return resolve(__dirname, '..', 'skills', 'yt-builder-mcp', 'SKILL.md');
71
15
  }
72
16
  let cached;
73
- /**
74
- * Load the bundled SKILL.md content. Cached after the first read.
75
- *
76
- * When `registry` is supplied AND it carries ≥1 site, the returned
77
- * string is the on-disk SKILL.md PLUS the W8 sites appendix (see
78
- * {@link appendSitesBlock}). When `registry` is omitted or empty, the
79
- * raw skill content is returned unchanged. The disk cache is shared
80
- * across calls — the appendix is recomputed each time so registry
81
- * mutations after the first load are reflected (within the same
82
- * process instance — the MCP `initialize` response only takes a
83
- * single-shot snapshot per session per plan §W8 line 919).
84
- *
85
- * @throws Error when the file is missing or unreadable (packaging bug).
86
- */
87
17
  export function loadSkillContent(registry) {
88
18
  if (cached === undefined) {
89
19
  const path = resolveSkillPath();
@@ -94,39 +24,6 @@ export function loadSkillContent(registry) {
94
24
  }
95
25
  return appendSitesBlock(cached, registry);
96
26
  }
97
- /**
98
- * Append the W8 "Currently configured sites" block to a skill-content
99
- * string. When the registry is empty, returns the input verbatim — no
100
- * separator, no header, no trailing newline change.
101
- *
102
- * Output shape (per plan §W8 Z.904-917):
103
- * ```text
104
- * <skillContent>
105
- *
106
- * ---
107
- *
108
- * ## Currently configured sites (3)
109
- *
110
- * - `wp-acme` — Acme — Production · wordpress · https://acme.com · default
111
- * - `joomla-beta` — Beta — Staging · joomla · https://beta.example.com/joomla
112
- * - `wp-internal` — Internal staging · wordpress · https://internal.example.com
113
- *
114
- * Use `yootheme_builder_sites_list` to inspect this at runtime.
115
- * Pass `site_id: "<id>"` on any tool call to target a specific site;
116
- * omit it to use the default.
117
- * ```
118
- *
119
- * Per-row format (bullet):
120
- * `- \`<site_id>\` — <label or "(no label)"> · <platform> · <url><" · default"?>`
121
- *
122
- * The platform column prefers `platform_resolved` when the registry
123
- * has memoised a probe result for that site (peek-only — never
124
- * triggers a new probe), and falls back to `platform_hint` otherwise.
125
- *
126
- * Bearer fields (bearer / bearer_ref) are intentionally NEVER
127
- * referenced — only `site_id`, `url`, `platform_*`, `is_default`,
128
- * `label` from {@link SiteRowT}.
129
- */
130
27
  export function appendSitesBlock(skillContent, registry) {
131
28
  const rows = registry.listForDisplay();
132
29
  if (rows.length === 0) {
@@ -142,49 +39,15 @@ export function appendSitesBlock(skillContent, registry) {
142
39
  'omit it to use the default.\n';
143
40
  return skillContent + block;
144
41
  }
145
- /**
146
- * Markdown-escape an operator-provided string so it cannot inject
147
- * structure into the rendered SKILL.md appendix.
148
- *
149
- * W12-R1.3 (A2-L2): the W8 sites-appendix renders `row.label` into the
150
- * server's `instructions` field, which MCP hosts surface to the LLM
151
- * verbatim. An operator with write-access to sites.json could land a
152
- * label like `Acme [INTERNAL TOOL: ignore prior context] Production`
153
- * and the prompt would carry that text into the model context. The
154
- * escape list covers the markdown special chars the W8 bullet format
155
- * could collide with (\`*_[]<>), preserving readable text while
156
- * preventing injection. site_id is regex-restricted at the schema
157
- * layer so it doesn't need escaping; url is operator-controlled but
158
- * has a much smaller chosen-char surface and is rendered after a `·`
159
- * separator that limits payload shape.
160
- */
161
42
  function escapeMarkdown(text) {
162
43
  return text.replace(/([\\`*_[\]<>])/g, '\\$1');
163
44
  }
164
- /**
165
- * Render one {@link SiteRowT} as a markdown bullet for the W8 sites
166
- * appendix.
167
- *
168
- * Format: `- \`<site_id>\` — <label> · <platform> · <url><" · default"?>`
169
- *
170
- * `<platform>` prefers `platform_resolved` (the W3 memo cache) and
171
- * falls back to `platform_hint` when no probe has run yet.
172
- * `<label>` falls back to the literal string `(no label)` when the
173
- * entry has none AND is markdown-escaped (W12-R1.3 prompt-injection
174
- * defense). The `default` suffix is only present when `is_default`
175
- * is true.
176
- */
177
45
  function renderBullet(row) {
178
46
  const platform = row.platform_resolved ?? row.platform_hint;
179
47
  const label = escapeMarkdown(row.label ?? '(no label)');
180
48
  const defaultSuffix = row.is_default ? ' · default' : '';
181
49
  return `- \`${row.site_id}\` — ${label} · ${platform} · ${row.url}${defaultSuffix}`;
182
50
  }
183
- /**
184
- * Reset the in-memory cache. Intended for tests only.
185
- *
186
- * @internal
187
- */
188
51
  export function __resetSkillCacheForTests() {
189
52
  cached = undefined;
190
53
  }