@wootsup/yt-builder-mcp 1.11.0 → 2.0.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.
- package/README.md +131 -33
- package/bin/node-floor.d.ts +28 -0
- package/bin/node-floor.js +123 -0
- package/bin/yt-builder-mcp.js +52 -11
- package/dist/auth.d.ts +3 -121
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +40 -170
- package/dist/auth.js.map +1 -1
- package/dist/catalog/build-catalog.d.ts +4 -49
- package/dist/catalog/build-catalog.d.ts.map +1 -1
- package/dist/catalog/build-catalog.js +15 -126
- package/dist/catalog/build-catalog.js.map +1 -1
- package/dist/catalog/json-schema.d.ts +3 -0
- package/dist/catalog/json-schema.d.ts.map +1 -0
- package/dist/catalog/json-schema.js +68 -0
- package/dist/catalog/json-schema.js.map +1 -0
- package/dist/catalog/output-shapes.d.ts +6 -0
- package/dist/catalog/output-shapes.d.ts.map +1 -0
- package/dist/catalog/output-shapes.js +89 -0
- package/dist/catalog/output-shapes.js.map +1 -0
- package/dist/catalog/tool-catalog-markdown.d.ts +1 -37
- package/dist/catalog/tool-catalog-markdown.d.ts.map +1 -1
- package/dist/catalog/tool-catalog-markdown.js +9 -41
- package/dist/catalog/tool-catalog-markdown.js.map +1 -1
- package/dist/cli/doctor-command.d.ts +2 -7
- package/dist/cli/doctor-command.d.ts.map +1 -1
- package/dist/cli/doctor-command.js +33 -54
- package/dist/cli/doctor-command.js.map +1 -1
- package/dist/cli/invocation-decision.d.ts +4 -52
- package/dist/cli/invocation-decision.d.ts.map +1 -1
- package/dist/cli/invocation-decision.js +45 -54
- package/dist/cli/invocation-decision.js.map +1 -1
- package/dist/client.d.ts +3 -107
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +34 -115
- package/dist/client.js.map +1 -1
- package/dist/clients/claude-code.d.ts +0 -15
- package/dist/clients/claude-code.d.ts.map +1 -1
- package/dist/clients/claude-code.js +0 -22
- package/dist/clients/claude-code.js.map +1 -1
- package/dist/clients/claude-desktop.d.ts +0 -16
- package/dist/clients/claude-desktop.d.ts.map +1 -1
- package/dist/clients/claude-desktop.js +0 -18
- package/dist/clients/claude-desktop.js.map +1 -1
- package/dist/clients/cline.d.ts +0 -23
- package/dist/clients/cline.d.ts.map +1 -1
- package/dist/clients/cline.js +0 -33
- package/dist/clients/cline.js.map +1 -1
- package/dist/clients/codex-cli.d.ts +0 -39
- package/dist/clients/codex-cli.d.ts.map +1 -1
- package/dist/clients/codex-cli.js +0 -137
- package/dist/clients/codex-cli.js.map +1 -1
- package/dist/clients/continue.d.ts +0 -10
- package/dist/clients/continue.d.ts.map +1 -1
- package/dist/clients/continue.js +0 -26
- package/dist/clients/continue.js.map +1 -1
- package/dist/clients/cursor.d.ts +0 -9
- package/dist/clients/cursor.d.ts.map +1 -1
- package/dist/clients/cursor.js +0 -11
- package/dist/clients/cursor.js.map +1 -1
- package/dist/clients/gemini-cli.d.ts +0 -15
- package/dist/clients/gemini-cli.d.ts.map +1 -1
- package/dist/clients/gemini-cli.js +0 -17
- package/dist/clients/gemini-cli.js.map +1 -1
- package/dist/clients/home.d.ts +0 -12
- package/dist/clients/home.d.ts.map +1 -1
- package/dist/clients/home.js +0 -12
- package/dist/clients/home.js.map +1 -1
- package/dist/clients/index.d.ts +0 -150
- package/dist/clients/index.d.ts.map +1 -1
- package/dist/clients/index.js +0 -112
- package/dist/clients/index.js.map +1 -1
- package/dist/clients/roo-code.d.ts +0 -20
- package/dist/clients/roo-code.d.ts.map +1 -1
- package/dist/clients/roo-code.js +0 -22
- package/dist/clients/roo-code.js.map +1 -1
- package/dist/clients/zed.d.ts +0 -9
- package/dist/clients/zed.d.ts.map +1 -1
- package/dist/clients/zed.js +0 -18
- package/dist/clients/zed.js.map +1 -1
- package/dist/compat-floor.d.ts +35 -0
- package/dist/compat-floor.d.ts.map +1 -0
- package/dist/compat-floor.js +84 -0
- package/dist/compat-floor.js.map +1 -0
- package/dist/compat-probe.d.ts +6 -0
- package/dist/compat-probe.d.ts.map +1 -0
- package/dist/compat-probe.js +20 -0
- package/dist/compat-probe.js.map +1 -0
- package/dist/diagnostics/ca-reexec.d.ts +0 -30
- package/dist/diagnostics/ca-reexec.d.ts.map +1 -1
- package/dist/diagnostics/ca-reexec.js +0 -62
- package/dist/diagnostics/ca-reexec.js.map +1 -1
- package/dist/diagnostics/ca-trust.d.ts +0 -22
- package/dist/diagnostics/ca-trust.d.ts.map +1 -1
- package/dist/diagnostics/ca-trust.js +3 -42
- package/dist/diagnostics/ca-trust.js.map +1 -1
- package/dist/diagnostics/diagnose-network-error.d.ts +1 -38
- package/dist/diagnostics/diagnose-network-error.d.ts.map +1 -1
- package/dist/diagnostics/diagnose-network-error.js +26 -37
- package/dist/diagnostics/diagnose-network-error.js.map +1 -1
- package/dist/diagnostics/doctor.d.ts +13 -65
- package/dist/diagnostics/doctor.d.ts.map +1 -1
- package/dist/diagnostics/doctor.js +46 -70
- package/dist/diagnostics/doctor.js.map +1 -1
- package/dist/diagnostics/startup-self-probe.d.ts +3 -25
- package/dist/diagnostics/startup-self-probe.d.ts.map +1 -1
- package/dist/diagnostics/startup-self-probe.js +11 -48
- package/dist/diagnostics/startup-self-probe.js.map +1 -1
- package/dist/errors/hints.d.ts +0 -44
- package/dist/errors/hints.d.ts.map +1 -1
- package/dist/errors/hints.js +0 -32
- package/dist/errors/hints.js.map +1 -1
- package/dist/errors/mask.d.ts +0 -31
- package/dist/errors/mask.d.ts.map +1 -1
- package/dist/errors/mask.js +0 -32
- package/dist/errors/mask.js.map +1 -1
- package/dist/errors/redact-credentials.d.ts +2 -0
- package/dist/errors/redact-credentials.d.ts.map +1 -0
- package/dist/errors/redact-credentials.js +13 -0
- package/dist/errors/redact-credentials.js.map +1 -0
- package/dist/errors/sanitize.d.ts +0 -29
- package/dist/errors/sanitize.d.ts.map +1 -1
- package/dist/errors/sanitize.js +0 -40
- package/dist/errors/sanitize.js.map +1 -1
- package/dist/errors.d.ts +6 -17
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +16 -21
- package/dist/errors.js.map +1 -1
- package/dist/gateway/advanced-read-tool.d.ts +0 -32
- package/dist/gateway/advanced-read-tool.d.ts.map +1 -1
- package/dist/gateway/advanced-read-tool.js +43 -111
- package/dist/gateway/advanced-read-tool.js.map +1 -1
- package/dist/gateway/advanced-tool/discovery.d.ts +1 -12
- package/dist/gateway/advanced-tool/discovery.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/discovery.js +18 -16
- package/dist/gateway/advanced-tool/discovery.js.map +1 -1
- package/dist/gateway/advanced-tool/domains.d.ts +7 -66
- package/dist/gateway/advanced-tool/domains.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/domains.js +36 -80
- package/dist/gateway/advanced-tool/domains.js.map +1 -1
- package/dist/gateway/advanced-tool/execute.d.ts +0 -25
- package/dist/gateway/advanced-tool/execute.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/execute.js +13 -49
- package/dist/gateway/advanced-tool/execute.js.map +1 -1
- package/dist/gateway/advanced-tool/index.d.ts +1 -32
- package/dist/gateway/advanced-tool/index.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/index.js +1 -35
- package/dist/gateway/advanced-tool/index.js.map +1 -1
- package/dist/gateway/advanced-tool/register.d.ts +0 -14
- package/dist/gateway/advanced-tool/register.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/register.js +22 -58
- package/dist/gateway/advanced-tool/register.js.map +1 -1
- package/dist/gateway/advanced-tool.d.ts +0 -11
- package/dist/gateway/advanced-tool.d.ts.map +1 -1
- package/dist/gateway/advanced-tool.js +0 -11
- package/dist/gateway/advanced-tool.js.map +1 -1
- package/dist/gateway/capturing-server.d.ts +3 -88
- package/dist/gateway/capturing-server.d.ts.map +1 -1
- package/dist/gateway/capturing-server.js +0 -77
- package/dist/gateway/capturing-server.js.map +1 -1
- package/dist/gateway/essentials.d.ts +1 -63
- package/dist/gateway/essentials.d.ts.map +1 -1
- package/dist/gateway/essentials.js +10 -174
- package/dist/gateway/essentials.js.map +1 -1
- package/dist/gateway/test-support.d.ts +0 -28
- package/dist/gateway/test-support.d.ts.map +1 -1
- package/dist/gateway/test-support.js +0 -29
- package/dist/gateway/test-support.js.map +1 -1
- package/dist/health-response.d.ts +2 -0
- package/dist/health-response.d.ts.map +1 -0
- package/dist/health-response.js +7 -0
- package/dist/health-response.js.map +1 -0
- package/dist/icon-data.js +0 -3
- package/dist/icon-data.js.map +1 -1
- package/dist/index.d.ts +7 -23
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +46 -130
- package/dist/index.js.map +1 -1
- package/dist/install-skill.d.ts +0 -44
- package/dist/install-skill.d.ts.map +1 -1
- package/dist/install-skill.js +5 -46
- package/dist/install-skill.js.map +1 -1
- package/dist/net/extra-headers.d.ts +0 -58
- package/dist/net/extra-headers.d.ts.map +1 -1
- package/dist/net/extra-headers.js +0 -67
- package/dist/net/extra-headers.js.map +1 -1
- package/dist/net/internal-host.d.ts +0 -31
- package/dist/net/internal-host.d.ts.map +1 -1
- package/dist/net/internal-host.js +7 -65
- package/dist/net/internal-host.js.map +1 -1
- package/dist/net/proxy-dispatcher.d.ts +0 -37
- package/dist/net/proxy-dispatcher.d.ts.map +1 -1
- package/dist/net/proxy-dispatcher.js +0 -40
- package/dist/net/proxy-dispatcher.js.map +1 -1
- package/dist/net/public-fetch.d.ts +53 -0
- package/dist/net/public-fetch.d.ts.map +1 -0
- package/dist/net/public-fetch.js +143 -0
- package/dist/net/public-fetch.js.map +1 -0
- package/dist/net/public-page-report.d.ts +26 -0
- package/dist/net/public-page-report.d.ts.map +1 -0
- package/dist/net/public-page-report.js +145 -0
- package/dist/net/public-page-report.js.map +1 -0
- package/dist/net/redirect-safe-fetch.d.ts +14 -0
- package/dist/net/redirect-safe-fetch.d.ts.map +1 -0
- package/dist/net/redirect-safe-fetch.js +61 -0
- package/dist/net/redirect-safe-fetch.js.map +1 -0
- package/dist/net/session-recovery-fetch.d.ts +7 -0
- package/dist/net/session-recovery-fetch.d.ts.map +1 -0
- package/dist/net/session-recovery-fetch.js +139 -0
- package/dist/net/session-recovery-fetch.js.map +1 -0
- package/dist/net/site-basic-auth.d.ts +1 -59
- package/dist/net/site-basic-auth.d.ts.map +1 -1
- package/dist/net/site-basic-auth.js +5 -94
- package/dist/net/site-basic-auth.js.map +1 -1
- package/dist/package-version.d.ts +2 -0
- package/dist/package-version.d.ts.map +1 -0
- package/dist/package-version.js +15 -0
- package/dist/package-version.js.map +1 -0
- package/dist/platform/detect.d.ts +0 -54
- package/dist/platform/detect.d.ts.map +1 -1
- package/dist/platform/detect.js +0 -53
- package/dist/platform/detect.js.map +1 -1
- package/dist/platform/index.d.ts +0 -100
- package/dist/platform/index.d.ts.map +1 -1
- package/dist/platform/index.js +0 -106
- package/dist/platform/index.js.map +1 -1
- package/dist/platform/joomla.d.ts +0 -35
- package/dist/platform/joomla.d.ts.map +1 -1
- package/dist/platform/joomla.js +0 -35
- package/dist/platform/joomla.js.map +1 -1
- package/dist/proxy/bridge.d.ts +36 -76
- package/dist/proxy/bridge.d.ts.map +1 -1
- package/dist/proxy/bridge.js +443 -136
- package/dist/proxy/bridge.js.map +1 -1
- package/dist/proxy/confirm-elicitation.d.ts +22 -0
- package/dist/proxy/confirm-elicitation.d.ts.map +1 -0
- package/dist/proxy/confirm-elicitation.js +170 -0
- package/dist/proxy/confirm-elicitation.js.map +1 -0
- package/dist/proxy/confirm-question-contract.d.ts +6 -0
- package/dist/proxy/confirm-question-contract.d.ts.map +1 -0
- package/dist/proxy/confirm-question-contract.js +9 -0
- package/dist/proxy/confirm-question-contract.js.map +1 -0
- package/dist/proxy/confirm-question.d.ts +2 -0
- package/dist/proxy/confirm-question.d.ts.map +1 -0
- package/dist/proxy/confirm-question.js +125 -0
- package/dist/proxy/confirm-question.js.map +1 -0
- package/dist/proxy/instructions.d.ts +4 -0
- package/dist/proxy/instructions.d.ts.map +1 -0
- package/dist/proxy/instructions.js +12 -0
- package/dist/proxy/instructions.js.map +1 -0
- package/dist/proxy/mode.d.ts +14 -9
- package/dist/proxy/mode.d.ts.map +1 -1
- package/dist/proxy/mode.js +58 -34
- package/dist/proxy/mode.js.map +1 -1
- package/dist/proxy/multi-site.d.ts +42 -0
- package/dist/proxy/multi-site.d.ts.map +1 -0
- package/dist/proxy/multi-site.js +134 -0
- package/dist/proxy/multi-site.js.map +1 -0
- package/dist/proxy/request-headers.d.ts +9 -0
- package/dist/proxy/request-headers.d.ts.map +1 -0
- package/dist/proxy/request-headers.js +17 -0
- package/dist/proxy/request-headers.js.map +1 -0
- package/dist/proxy/shadow-tools.d.ts +9 -0
- package/dist/proxy/shadow-tools.d.ts.map +1 -0
- package/dist/proxy/shadow-tools.js +42 -0
- package/dist/proxy/shadow-tools.js.map +1 -0
- package/dist/proxy/tools-list-cap.d.ts +7 -0
- package/dist/proxy/tools-list-cap.d.ts.map +1 -0
- package/dist/proxy/tools-list-cap.js +14 -0
- package/dist/proxy/tools-list-cap.js.map +1 -0
- package/dist/proxy/transport-uncertainty.d.ts +2 -0
- package/dist/proxy/transport-uncertainty.d.ts.map +1 -0
- package/dist/proxy/transport-uncertainty.js +8 -0
- package/dist/proxy/transport-uncertainty.js.map +1 -0
- package/dist/proxy/upstream-error.d.ts +7 -0
- package/dist/proxy/upstream-error.d.ts.map +1 -0
- package/dist/proxy/upstream-error.js +35 -0
- package/dist/proxy/upstream-error.js.map +1 -0
- package/dist/proxy/wire-dialect.d.ts +5 -0
- package/dist/proxy/wire-dialect.d.ts.map +1 -0
- package/dist/proxy/wire-dialect.js +33 -0
- package/dist/proxy/wire-dialect.js.map +1 -0
- package/dist/server.d.ts +14 -82
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +107 -203
- package/dist/server.js.map +1 -1
- package/dist/setup/banner-color.d.ts +13 -0
- package/dist/setup/banner-color.d.ts.map +1 -0
- package/dist/setup/banner-color.js +93 -0
- package/dist/setup/banner-color.js.map +1 -0
- package/dist/setup/banner.d.ts +22 -0
- package/dist/setup/banner.d.ts.map +1 -0
- package/dist/setup/banner.js +119 -0
- package/dist/setup/banner.js.map +1 -0
- package/dist/setup/ca-recovery.d.ts +20 -0
- package/dist/setup/ca-recovery.d.ts.map +1 -0
- package/dist/setup/ca-recovery.js +92 -0
- package/dist/setup/ca-recovery.js.map +1 -0
- package/dist/setup/closing.d.ts +15 -0
- package/dist/setup/closing.d.ts.map +1 -0
- package/dist/setup/closing.js +43 -0
- package/dist/setup/closing.js.map +1 -0
- package/dist/setup/corporate-ca.d.ts +16 -0
- package/dist/setup/corporate-ca.d.ts.map +1 -0
- package/dist/setup/corporate-ca.js +32 -0
- package/dist/setup/corporate-ca.js.map +1 -0
- package/dist/setup/host-platform.d.ts +8 -0
- package/dist/setup/host-platform.d.ts.map +1 -0
- package/dist/setup/host-platform.js +21 -0
- package/dist/setup/host-platform.js.map +1 -0
- package/dist/setup/install-configs.d.ts +18 -0
- package/dist/setup/install-configs.d.ts.map +1 -0
- package/dist/setup/install-configs.js +70 -0
- package/dist/setup/install-configs.js.map +1 -0
- package/dist/setup/multi-site-loop.d.ts +14 -0
- package/dist/setup/multi-site-loop.d.ts.map +1 -0
- package/dist/setup/multi-site-loop.js +20 -0
- package/dist/setup/multi-site-loop.js.map +1 -0
- package/dist/setup/phases.d.ts +18 -0
- package/dist/setup/phases.d.ts.map +1 -0
- package/dist/setup/phases.js +55 -0
- package/dist/setup/phases.js.map +1 -0
- package/dist/setup/registry-remedy.d.ts +12 -0
- package/dist/setup/registry-remedy.d.ts.map +1 -0
- package/dist/setup/registry-remedy.js +37 -0
- package/dist/setup/registry-remedy.js.map +1 -0
- package/dist/setup/resume.d.ts +28 -0
- package/dist/setup/resume.d.ts.map +1 -0
- package/dist/setup/resume.js +99 -0
- package/dist/setup/resume.js.map +1 -0
- package/dist/setup-ca-env.d.ts +0 -30
- package/dist/setup-ca-env.d.ts.map +1 -1
- package/dist/setup-ca-env.js +0 -28
- package/dist/setup-ca-env.js.map +1 -1
- package/dist/setup-ca-reprobe.d.ts +0 -25
- package/dist/setup-ca-reprobe.d.ts.map +1 -1
- package/dist/setup-ca-reprobe.js +0 -34
- package/dist/setup-ca-reprobe.js.map +1 -1
- package/dist/setup-cli-confirm.d.ts +0 -34
- package/dist/setup-cli-confirm.d.ts.map +1 -1
- package/dist/setup-cli-confirm.js +0 -36
- package/dist/setup-cli-confirm.js.map +1 -1
- package/dist/setup-cli.d.ts +6 -167
- package/dist/setup-cli.d.ts.map +1 -1
- package/dist/setup-cli.js +161 -173
- package/dist/setup-cli.js.map +1 -1
- package/dist/setup-npx-spec.d.ts +0 -36
- package/dist/setup-npx-spec.d.ts.map +1 -1
- package/dist/setup-npx-spec.js +0 -38
- package/dist/setup-npx-spec.js.map +1 -1
- package/dist/setup-prompts.d.ts +5 -70
- package/dist/setup-prompts.d.ts.map +1 -1
- package/dist/setup-prompts.js +67 -107
- package/dist/setup-prompts.js.map +1 -1
- package/dist/setup-token.d.ts +0 -34
- package/dist/setup-token.d.ts.map +1 -1
- package/dist/setup-token.js +0 -40
- package/dist/setup-token.js.map +1 -1
- package/dist/setup-wizard-defaults.d.ts +0 -36
- package/dist/setup-wizard-defaults.d.ts.map +1 -1
- package/dist/setup-wizard-defaults.js +0 -75
- package/dist/setup-wizard-defaults.js.map +1 -1
- package/dist/setup-wizard-handshake.d.ts +1 -19
- package/dist/setup-wizard-handshake.d.ts.map +1 -1
- package/dist/setup-wizard-handshake.js +8 -45
- package/dist/setup-wizard-handshake.js.map +1 -1
- package/dist/setup-wizard-types.d.ts +16 -209
- package/dist/setup-wizard-types.d.ts.map +1 -1
- package/dist/setup-wizard-types.js +0 -9
- package/dist/setup-wizard-types.js.map +1 -1
- package/dist/setup-wizard.d.ts +0 -28
- package/dist/setup-wizard.d.ts.map +1 -1
- package/dist/setup-wizard.js +167 -412
- package/dist/setup-wizard.js.map +1 -1
- package/dist/setup.d.ts +0 -15
- package/dist/setup.d.ts.map +1 -1
- package/dist/setup.js +0 -15
- package/dist/setup.js.map +1 -1
- package/dist/sites/bootstrap.d.ts +0 -38
- package/dist/sites/bootstrap.d.ts.map +1 -1
- package/dist/sites/bootstrap.js +0 -44
- package/dist/sites/bootstrap.js.map +1 -1
- package/dist/sites/cli/add-site.d.ts +0 -76
- package/dist/sites/cli/add-site.d.ts.map +1 -1
- package/dist/sites/cli/add-site.js +0 -71
- package/dist/sites/cli/add-site.js.map +1 -1
- package/dist/sites/cli/list-sites.d.ts +0 -31
- package/dist/sites/cli/list-sites.d.ts.map +1 -1
- package/dist/sites/cli/list-sites.js +0 -45
- package/dist/sites/cli/list-sites.js.map +1 -1
- package/dist/sites/cli/remove-site.d.ts +0 -37
- package/dist/sites/cli/remove-site.d.ts.map +1 -1
- package/dist/sites/cli/remove-site.js +0 -37
- package/dist/sites/cli/remove-site.js.map +1 -1
- package/dist/sites/cli/set-default.d.ts +0 -25
- package/dist/sites/cli/set-default.d.ts.map +1 -1
- package/dist/sites/cli/set-default.js +0 -22
- package/dist/sites/cli/set-default.js.map +1 -1
- package/dist/sites/cli/test-site.d.ts +0 -44
- package/dist/sites/cli/test-site.d.ts.map +1 -1
- package/dist/sites/cli/test-site.js +0 -39
- package/dist/sites/cli/test-site.js.map +1 -1
- package/dist/sites/client-pool.d.ts +11 -164
- package/dist/sites/client-pool.d.ts.map +1 -1
- package/dist/sites/client-pool.js +73 -194
- package/dist/sites/client-pool.js.map +1 -1
- package/dist/sites/config-problem.d.ts +2 -0
- package/dist/sites/config-problem.d.ts.map +1 -0
- package/dist/sites/config-problem.js +13 -0
- package/dist/sites/config-problem.js.map +1 -0
- package/dist/sites/env-bridge.d.ts +0 -69
- package/dist/sites/env-bridge.d.ts.map +1 -1
- package/dist/sites/env-bridge.js +2 -71
- package/dist/sites/env-bridge.js.map +1 -1
- package/dist/sites/op-inject.d.ts +23 -0
- package/dist/sites/op-inject.d.ts.map +1 -0
- package/dist/sites/op-inject.js +131 -0
- package/dist/sites/op-inject.js.map +1 -0
- package/dist/sites/paths.d.ts +0 -19
- package/dist/sites/paths.d.ts.map +1 -1
- package/dist/sites/paths.js +0 -19
- package/dist/sites/paths.js.map +1 -1
- package/dist/sites/probe.d.ts +1 -47
- package/dist/sites/probe.d.ts.map +1 -1
- package/dist/sites/probe.js +4 -46
- package/dist/sites/probe.js.map +1 -1
- package/dist/sites/registry.d.ts +4 -135
- package/dist/sites/registry.d.ts.map +1 -1
- package/dist/sites/registry.js +4 -98
- package/dist/sites/registry.js.map +1 -1
- package/dist/sites/schema.d.ts +3 -51
- package/dist/sites/schema.d.ts.map +1 -1
- package/dist/sites/schema.js +6 -52
- package/dist/sites/schema.js.map +1 -1
- package/dist/sites/secret-resolver.d.ts +6 -76
- package/dist/sites/secret-resolver.d.ts.map +1 -1
- package/dist/sites/secret-resolver.js +39 -104
- package/dist/sites/secret-resolver.js.map +1 -1
- package/dist/sites/store.d.ts +12 -69
- package/dist/sites/store.d.ts.map +1 -1
- package/dist/sites/store.js +37 -86
- package/dist/sites/store.js.map +1 -1
- package/dist/sites/substituted-registry.d.ts +11 -0
- package/dist/sites/substituted-registry.d.ts.map +1 -0
- package/dist/sites/substituted-registry.js +13 -0
- package/dist/sites/substituted-registry.js.map +1 -0
- package/dist/sites/tools/fetch-public-url.d.ts +4 -0
- package/dist/sites/tools/fetch-public-url.d.ts.map +1 -0
- package/dist/sites/tools/fetch-public-url.js +231 -0
- package/dist/sites/tools/fetch-public-url.js.map +1 -0
- package/dist/sites/tools/index.d.ts +2 -26
- package/dist/sites/tools/index.d.ts.map +1 -1
- package/dist/sites/tools/index.js +5 -28
- package/dist/sites/tools/index.js.map +1 -1
- package/dist/sites/tools/sites-list.d.ts +3 -47
- package/dist/sites/tools/sites-list.d.ts.map +1 -1
- package/dist/sites/tools/sites-list.js +68 -80
- package/dist/sites/tools/sites-list.js.map +1 -1
- package/dist/sites/tools/sites-overview.d.ts +4 -0
- package/dist/sites/tools/sites-overview.d.ts.map +1 -0
- package/dist/sites/tools/sites-overview.js +209 -0
- package/dist/sites/tools/sites-overview.js.map +1 -0
- package/dist/sites/tools/sites-test.d.ts +2 -45
- package/dist/sites/tools/sites-test.d.ts.map +1 -1
- package/dist/sites/tools/sites-test.js +1 -56
- package/dist/sites/tools/sites-test.js.map +1 -1
- package/dist/sites/tools/use-site.d.ts +2 -45
- package/dist/sites/tools/use-site.d.ts.map +1 -1
- package/dist/sites/tools/use-site.js +31 -80
- package/dist/sites/tools/use-site.js.map +1 -1
- package/dist/sites/unknown-name-result.d.ts +10 -0
- package/dist/sites/unknown-name-result.d.ts.map +1 -0
- package/dist/sites/unknown-name-result.js +13 -0
- package/dist/sites/unknown-name-result.js.map +1 -0
- package/dist/skill-instructions.d.ts +7 -0
- package/dist/skill-instructions.d.ts.map +1 -0
- package/dist/skill-instructions.js +84 -0
- package/dist/skill-instructions.js.map +1 -0
- package/dist/skill-loader.d.ts +0 -102
- package/dist/skill-loader.d.ts.map +1 -1
- package/dist/skill-loader.js +4 -142
- package/dist/skill-loader.js.map +1 -1
- package/dist/skill-manifest.d.ts +0 -20
- package/dist/skill-manifest.d.ts.map +1 -1
- package/dist/skill-manifest.js +1 -21
- package/dist/skill-manifest.js.map +1 -1
- package/dist/skill-topics.d.ts +19 -0
- package/dist/skill-topics.d.ts.map +1 -0
- package/dist/skill-topics.js +181 -0
- package/dist/skill-topics.js.map +1 -0
- package/dist/tools/active-site.d.ts +16 -0
- package/dist/tools/active-site.d.ts.map +1 -0
- package/dist/tools/active-site.js +55 -0
- package/dist/tools/active-site.js.map +1 -0
- package/dist/tools/bind-guidance.d.ts +2 -72
- package/dist/tools/bind-guidance.d.ts.map +1 -1
- package/dist/tools/bind-guidance.js +2 -72
- package/dist/tools/bind-guidance.js.map +1 -1
- package/dist/tools/budgeted-table.d.ts +16 -0
- package/dist/tools/budgeted-table.d.ts.map +1 -0
- package/dist/tools/budgeted-table.js +203 -0
- package/dist/tools/budgeted-table.js.map +1 -0
- package/dist/tools/elements/bind-output-schema.d.ts +69 -0
- package/dist/tools/elements/bind-output-schema.d.ts.map +1 -0
- package/dist/tools/elements/bind-output-schema.js +64 -0
- package/dist/tools/elements/bind-output-schema.js.map +1 -0
- package/dist/tools/elements/builders.d.ts +1 -22
- package/dist/tools/elements/builders.d.ts.map +1 -1
- package/dist/tools/elements/builders.js +171 -133
- package/dist/tools/elements/builders.js.map +1 -1
- package/dist/tools/elements/index.d.ts +0 -26
- package/dist/tools/elements/index.d.ts.map +1 -1
- package/dist/tools/elements/index.js +0 -25
- package/dist/tools/elements/index.js.map +1 -1
- package/dist/tools/elements/read-output-schemas.d.ts +121 -0
- package/dist/tools/elements/read-output-schemas.d.ts.map +1 -0
- package/dist/tools/elements/read-output-schemas.js +225 -0
- package/dist/tools/elements/read-output-schemas.js.map +1 -0
- package/dist/tools/elements/write-output-schemas.d.ts +185 -0
- package/dist/tools/elements/write-output-schemas.d.ts.map +1 -0
- package/dist/tools/elements/write-output-schemas.js +98 -0
- package/dist/tools/elements/write-output-schemas.js.map +1 -0
- package/dist/tools/elements.d.ts +0 -11
- package/dist/tools/elements.d.ts.map +1 -1
- package/dist/tools/elements.js +0 -11
- package/dist/tools/elements.js.map +1 -1
- package/dist/tools/format/health-format.d.ts +42 -43
- package/dist/tools/format/health-format.d.ts.map +1 -1
- package/dist/tools/format/health-format.js +32 -55
- package/dist/tools/format/health-format.js.map +1 -1
- package/dist/tools/format/inspection-format.d.ts +4 -49
- package/dist/tools/format/inspection-format.d.ts.map +1 -1
- package/dist/tools/format/inspection-format.js +46 -114
- package/dist/tools/format/inspection-format.js.map +1 -1
- package/dist/tools/format/pages-format.d.ts +32 -69
- package/dist/tools/format/pages-format.d.ts.map +1 -1
- package/dist/tools/format/pages-format.js +115 -133
- package/dist/tools/format/pages-format.js.map +1 -1
- package/dist/tools/format/sources-format.d.ts +5 -39
- package/dist/tools/format/sources-format.d.ts.map +1 -1
- package/dist/tools/format/sources-format.js +57 -87
- package/dist/tools/format/sources-format.js.map +1 -1
- package/dist/tools/health-output-schemas.d.ts +82 -0
- package/dist/tools/health-output-schemas.d.ts.map +1 -0
- package/dist/tools/health-output-schemas.js +130 -0
- package/dist/tools/health-output-schemas.js.map +1 -0
- package/dist/tools/health.d.ts +2 -20
- package/dist/tools/health.d.ts.map +1 -1
- package/dist/tools/health.js +59 -184
- package/dist/tools/health.js.map +1 -1
- package/dist/tools/index.d.ts +1 -26
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +13 -33
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/inspection.d.ts +21 -17
- package/dist/tools/inspection.d.ts.map +1 -1
- package/dist/tools/inspection.js +431 -268
- package/dist/tools/inspection.js.map +1 -1
- package/dist/tools/library.d.ts +118 -126
- package/dist/tools/library.d.ts.map +1 -1
- package/dist/tools/library.js +723 -456
- package/dist/tools/library.js.map +1 -1
- package/dist/tools/local-content/builders.d.ts +1 -17
- package/dist/tools/local-content/builders.d.ts.map +1 -1
- package/dist/tools/local-content/builders.js +105 -48
- package/dist/tools/local-content/builders.js.map +1 -1
- package/dist/tools/local-content/index.d.ts +0 -15
- package/dist/tools/local-content/index.d.ts.map +1 -1
- package/dist/tools/local-content/index.js +0 -14
- package/dist/tools/local-content/index.js.map +1 -1
- package/dist/tools/local-content/schemas.d.ts +31 -47
- package/dist/tools/local-content/schemas.d.ts.map +1 -1
- package/dist/tools/local-content/schemas.js +33 -62
- package/dist/tools/local-content/schemas.js.map +1 -1
- package/dist/tools/modules/builders.d.ts +4 -0
- package/dist/tools/modules/builders.d.ts.map +1 -0
- package/dist/tools/modules/builders.js +58 -0
- package/dist/tools/modules/builders.js.map +1 -0
- package/dist/tools/modules/index.d.ts +2 -0
- package/dist/tools/modules/index.d.ts.map +1 -0
- package/dist/tools/modules/index.js +2 -0
- package/dist/tools/modules/index.js.map +1 -0
- package/dist/tools/modules/module-id-schema.d.ts +4 -0
- package/dist/tools/modules/module-id-schema.d.ts.map +1 -0
- package/dist/tools/modules/module-id-schema.js +14 -0
- package/dist/tools/modules/module-id-schema.js.map +1 -0
- package/dist/tools/modules/module-type-fields.d.ts +10 -0
- package/dist/tools/modules/module-type-fields.d.ts.map +1 -0
- package/dist/tools/modules/module-type-fields.js +34 -0
- package/dist/tools/modules/module-type-fields.js.map +1 -0
- package/dist/tools/modules/modules-create.d.ts +59 -0
- package/dist/tools/modules/modules-create.d.ts.map +1 -0
- package/dist/tools/modules/modules-create.js +154 -0
- package/dist/tools/modules/modules-create.js.map +1 -0
- package/dist/tools/modules/modules-delete.d.ts +51 -0
- package/dist/tools/modules/modules-delete.d.ts.map +1 -0
- package/dist/tools/modules/modules-delete.js +180 -0
- package/dist/tools/modules/modules-delete.js.map +1 -0
- package/dist/tools/modules/modules-update.d.ts +43 -0
- package/dist/tools/modules/modules-update.d.ts.map +1 -0
- package/dist/tools/modules/modules-update.js +177 -0
- package/dist/tools/modules/modules-update.js.map +1 -0
- package/dist/tools/modules/placement-hints.d.ts +5 -0
- package/dist/tools/modules/placement-hints.d.ts.map +1 -0
- package/dist/tools/modules/placement-hints.js +90 -0
- package/dist/tools/modules/placement-hints.js.map +1 -0
- package/dist/tools/modules/placement-ways.d.ts +13 -0
- package/dist/tools/modules/placement-ways.d.ts.map +1 -0
- package/dist/tools/modules/placement-ways.js +61 -0
- package/dist/tools/modules/placement-ways.js.map +1 -0
- package/dist/tools/multi-items/builders.d.ts +1 -21
- package/dist/tools/multi-items/builders.d.ts.map +1 -1
- package/dist/tools/multi-items/builders.js +22 -67
- package/dist/tools/multi-items/builders.js.map +1 -1
- package/dist/tools/multi-items/index.d.ts +0 -15
- package/dist/tools/multi-items/index.d.ts.map +1 -1
- package/dist/tools/multi-items/index.js +0 -15
- package/dist/tools/multi-items/index.js.map +1 -1
- package/dist/tools/multi-items/item-container-map.d.ts +0 -35
- package/dist/tools/multi-items/item-container-map.d.ts.map +1 -1
- package/dist/tools/multi-items/item-container-map.js +0 -35
- package/dist/tools/multi-items/item-container-map.js.map +1 -1
- package/dist/tools/multi-items/output-schemas.d.ts +101 -0
- package/dist/tools/multi-items/output-schemas.d.ts.map +1 -0
- package/dist/tools/multi-items/output-schemas.js +74 -0
- package/dist/tools/multi-items/output-schemas.js.map +1 -0
- package/dist/tools/navigation/builders.d.ts +3 -0
- package/dist/tools/navigation/builders.d.ts.map +1 -0
- package/dist/tools/navigation/builders.js +25 -0
- package/dist/tools/navigation/builders.js.map +1 -0
- package/dist/tools/navigation/index.d.ts +2 -0
- package/dist/tools/navigation/index.d.ts.map +1 -0
- package/dist/tools/navigation/index.js +2 -0
- package/dist/tools/navigation/index.js.map +1 -0
- package/dist/tools/navigation/schemas.d.ts +16 -0
- package/dist/tools/navigation/schemas.d.ts.map +1 -0
- package/dist/tools/navigation/schemas.js +11 -0
- package/dist/tools/navigation/schemas.js.map +1 -0
- package/dist/tools/output-schema-metadata.d.ts +5 -0
- package/dist/tools/output-schema-metadata.d.ts.map +1 -0
- package/dist/tools/output-schema-metadata.js +83 -0
- package/dist/tools/output-schema-metadata.js.map +1 -0
- package/dist/tools/pages/builders.d.ts +1 -41
- package/dist/tools/pages/builders.d.ts.map +1 -1
- package/dist/tools/pages/builders.js +373 -359
- package/dist/tools/pages/builders.js.map +1 -1
- package/dist/tools/pages/header-transparency.d.ts +34 -0
- package/dist/tools/pages/header-transparency.d.ts.map +1 -0
- package/dist/tools/pages/header-transparency.js +85 -0
- package/dist/tools/pages/header-transparency.js.map +1 -0
- package/dist/tools/pages/index.d.ts +1 -19
- package/dist/tools/pages/index.d.ts.map +1 -1
- package/dist/tools/pages/index.js +1 -19
- package/dist/tools/pages/index.js.map +1 -1
- package/dist/tools/pages/schemas.d.ts +392 -224
- package/dist/tools/pages/schemas.d.ts.map +1 -1
- package/dist/tools/pages/schemas.js +605 -458
- package/dist/tools/pages/schemas.js.map +1 -1
- package/dist/tools/pages/write-output-schemas.d.ts +139 -0
- package/dist/tools/pages/write-output-schemas.d.ts.map +1 -0
- package/dist/tools/pages/write-output-schemas.js +138 -0
- package/dist/tools/pages/write-output-schemas.js.map +1 -0
- package/dist/tools/pages.d.ts +0 -11
- package/dist/tools/pages.d.ts.map +1 -1
- package/dist/tools/pages.js +0 -11
- package/dist/tools/pages.js.map +1 -1
- package/dist/tools/pool-resolve-helper.d.ts +0 -52
- package/dist/tools/pool-resolve-helper.d.ts.map +1 -1
- package/dist/tools/pool-resolve-helper.js +29 -104
- package/dist/tools/pool-resolve-helper.js.map +1 -1
- package/dist/tools/progress-phases.d.ts +0 -42
- package/dist/tools/progress-phases.d.ts.map +1 -1
- package/dist/tools/progress-phases.js +0 -44
- package/dist/tools/progress-phases.js.map +1 -1
- package/dist/tools/response-budget.d.ts +8 -0
- package/dist/tools/response-budget.d.ts.map +1 -0
- package/dist/tools/response-budget.js +7 -0
- package/dist/tools/response-budget.js.map +1 -0
- package/dist/tools/shared-schemas.d.ts +12 -43
- package/dist/tools/shared-schemas.d.ts.map +1 -1
- package/dist/tools/shared-schemas.js +42 -97
- package/dist/tools/shared-schemas.js.map +1 -1
- package/dist/tools/skill/builders.d.ts +3 -0
- package/dist/tools/skill/builders.d.ts.map +1 -0
- package/dist/tools/skill/builders.js +81 -0
- package/dist/tools/skill/builders.js.map +1 -0
- package/dist/tools/sources/builders.d.ts +1 -11
- package/dist/tools/sources/builders.d.ts.map +1 -1
- package/dist/tools/sources/builders.js +195 -173
- package/dist/tools/sources/builders.js.map +1 -1
- package/dist/tools/sources/index.d.ts +0 -17
- package/dist/tools/sources/index.d.ts.map +1 -1
- package/dist/tools/sources/index.js +0 -16
- package/dist/tools/sources/index.js.map +1 -1
- package/dist/tools/sources/read-output-schemas.d.ts +101 -0
- package/dist/tools/sources/read-output-schemas.d.ts.map +1 -0
- package/dist/tools/sources/read-output-schemas.js +105 -0
- package/dist/tools/sources/read-output-schemas.js.map +1 -0
- package/dist/tools/sources/source-name-argument.d.ts +17 -0
- package/dist/tools/sources/source-name-argument.d.ts.map +1 -0
- package/dist/tools/sources/source-name-argument.js +64 -0
- package/dist/tools/sources/source-name-argument.js.map +1 -0
- package/dist/tools/sources/write-output-schemas.d.ts +100 -0
- package/dist/tools/sources/write-output-schemas.d.ts.map +1 -0
- package/dist/tools/sources/write-output-schemas.js +61 -0
- package/dist/tools/sources/write-output-schemas.js.map +1 -0
- package/dist/tools/sources.d.ts +0 -12
- package/dist/tools/sources.d.ts.map +1 -1
- package/dist/tools/sources.js +0 -12
- package/dist/tools/sources.js.map +1 -1
- package/dist/tools/sparse-fields.d.ts +19 -194
- package/dist/tools/sparse-fields.d.ts.map +1 -1
- package/dist/tools/sparse-fields.js +212 -196
- package/dist/tools/sparse-fields.js.map +1 -1
- package/dist/tools/strict-input.d.ts +5 -0
- package/dist/tools/strict-input.d.ts.map +1 -0
- package/dist/tools/strict-input.js +55 -0
- package/dist/tools/strict-input.js.map +1 -0
- package/dist/tools/sublayout/builders.d.ts +1 -21
- package/dist/tools/sublayout/builders.d.ts.map +1 -1
- package/dist/tools/sublayout/builders.js +10 -40
- package/dist/tools/sublayout/builders.js.map +1 -1
- package/dist/tools/sublayout/index.d.ts +1 -11
- package/dist/tools/sublayout/index.d.ts.map +1 -1
- package/dist/tools/sublayout/index.js +1 -11
- package/dist/tools/sublayout/index.js.map +1 -1
- package/dist/tools/sublayout/output-schemas.d.ts +57 -0
- package/dist/tools/sublayout/output-schemas.d.ts.map +1 -0
- package/dist/tools/sublayout/output-schemas.js +51 -0
- package/dist/tools/sublayout/output-schemas.js.map +1 -0
- package/dist/tools/tool-builder/annotations.d.ts +1 -49
- package/dist/tools/tool-builder/annotations.d.ts.map +1 -1
- package/dist/tools/tool-builder/annotations.js +9 -49
- package/dist/tools/tool-builder/annotations.js.map +1 -1
- package/dist/tools/tool-builder/confirm-preview.d.ts +24 -0
- package/dist/tools/tool-builder/confirm-preview.d.ts.map +1 -0
- package/dist/tools/tool-builder/confirm-preview.js +37 -0
- package/dist/tools/tool-builder/confirm-preview.js.map +1 -0
- package/dist/tools/tool-builder/define.d.ts +6 -26
- package/dist/tools/tool-builder/define.d.ts.map +1 -1
- package/dist/tools/tool-builder/define.js +0 -25
- package/dist/tools/tool-builder/define.js.map +1 -1
- package/dist/tools/tool-builder/index.d.ts +3 -26
- package/dist/tools/tool-builder/index.d.ts.map +1 -1
- package/dist/tools/tool-builder/index.js +2 -25
- package/dist/tools/tool-builder/index.js.map +1 -1
- package/dist/tools/tool-builder/results.d.ts +4 -111
- package/dist/tools/tool-builder/results.d.ts.map +1 -1
- package/dist/tools/tool-builder/results.js +258 -250
- package/dist/tools/tool-builder/results.js.map +1 -1
- package/dist/tools/tool-builder/types.d.ts +5 -59
- package/dist/tools/tool-builder/types.d.ts.map +1 -1
- package/dist/tools/tool-builder/types.js +0 -7
- package/dist/tools/tool-builder/types.js.map +1 -1
- package/dist/tools/tool-builder.d.ts +0 -14
- package/dist/tools/tool-builder.d.ts.map +1 -1
- package/dist/tools/tool-builder.js +0 -14
- package/dist/tools/tool-builder.js.map +1 -1
- package/dist/uninstall-skill.d.ts +0 -41
- package/dist/uninstall-skill.d.ts.map +1 -1
- package/dist/uninstall-skill.js +0 -49
- package/dist/uninstall-skill.js.map +1 -1
- package/dist/uninstall.d.ts +0 -41
- package/dist/uninstall.d.ts.map +1 -1
- package/dist/uninstall.js +1 -29
- package/dist/uninstall.js.map +1 -1
- package/dist/update/update-check.d.ts +0 -26
- package/dist/update/update-check.d.ts.map +1 -1
- package/dist/update/update-check.js +0 -25
- package/dist/update/update-check.js.map +1 -1
- package/manifest.json +4 -5
- package/package.json +5 -5
- package/skills/yt-builder-mcp/SKILL.md +2958 -382
- package/dist/tools/elements/handlers-write.d.ts +0 -70
- package/dist/tools/elements/handlers-write.d.ts.map +0 -1
- package/dist/tools/elements/handlers-write.js +0 -700
- package/dist/tools/elements/handlers-write.js.map +0 -1
- package/dist/tools/elements/handlers.d.ts +0 -125
- package/dist/tools/elements/handlers.d.ts.map +0 -1
- package/dist/tools/elements/handlers.js +0 -571
- package/dist/tools/elements/handlers.js.map +0 -1
- package/dist/tools/elements/layout-hierarchy-rules.d.ts +0 -62
- package/dist/tools/elements/layout-hierarchy-rules.d.ts.map +0 -1
- package/dist/tools/elements/layout-hierarchy-rules.js +0 -154
- package/dist/tools/elements/layout-hierarchy-rules.js.map +0 -1
- package/dist/tools/elements/schema-validation.d.ts +0 -96
- package/dist/tools/elements/schema-validation.d.ts.map +0 -1
- package/dist/tools/elements/schema-validation.js +0 -249
- package/dist/tools/elements/schema-validation.js.map +0 -1
- package/dist/tools/elicitation.d.ts +0 -87
- package/dist/tools/elicitation.d.ts.map +0 -1
- package/dist/tools/elicitation.js +0 -100
- package/dist/tools/elicitation.js.map +0 -1
- package/dist/tools/format/elements-format.d.ts +0 -75
- package/dist/tools/format/elements-format.d.ts.map +0 -1
- package/dist/tools/format/elements-format.js +0 -324
- package/dist/tools/format/elements-format.js.map +0 -1
- package/dist/tools/format/source-schema-format.d.ts +0 -74
- package/dist/tools/format/source-schema-format.d.ts.map +0 -1
- package/dist/tools/format/source-schema-format.js +0 -208
- package/dist/tools/format/source-schema-format.js.map +0 -1
- package/dist/tools/layout-flatten.d.ts +0 -84
- package/dist/tools/layout-flatten.d.ts.map +0 -1
- package/dist/tools/layout-flatten.js +0 -129
- package/dist/tools/layout-flatten.js.map +0 -1
- package/dist/tools/local-content/handlers.d.ts +0 -54
- package/dist/tools/local-content/handlers.d.ts.map +0 -1
- package/dist/tools/local-content/handlers.js +0 -316
- package/dist/tools/local-content/handlers.js.map +0 -1
- package/dist/tools/multi-items/clean-implode-handler.d.ts +0 -37
- package/dist/tools/multi-items/clean-implode-handler.d.ts.map +0 -1
- package/dist/tools/multi-items/clean-implode-handler.js +0 -65
- package/dist/tools/multi-items/clean-implode-handler.js.map +0 -1
- package/dist/tools/multi-items/format/inspection-format.d.ts +0 -41
- package/dist/tools/multi-items/format/inspection-format.d.ts.map +0 -1
- package/dist/tools/multi-items/format/inspection-format.js +0 -64
- package/dist/tools/multi-items/format/inspection-format.js.map +0 -1
- package/dist/tools/multi-items/inspect-handler.d.ts +0 -97
- package/dist/tools/multi-items/inspect-handler.d.ts.map +0 -1
- package/dist/tools/multi-items/inspect-handler.js +0 -323
- package/dist/tools/multi-items/inspect-handler.js.map +0 -1
- package/dist/tools/multi-items/inspection-cache.d.ts +0 -85
- package/dist/tools/multi-items/inspection-cache.d.ts.map +0 -1
- package/dist/tools/multi-items/inspection-cache.js +0 -126
- package/dist/tools/multi-items/inspection-cache.js.map +0 -1
- package/dist/tools/pages/handlers-audit.d.ts +0 -129
- package/dist/tools/pages/handlers-audit.d.ts.map +0 -1
- package/dist/tools/pages/handlers-audit.js +0 -704
- package/dist/tools/pages/handlers-audit.js.map +0 -1
- package/dist/tools/pages/handlers-read.d.ts +0 -95
- package/dist/tools/pages/handlers-read.d.ts.map +0 -1
- package/dist/tools/pages/handlers-read.js +0 -929
- package/dist/tools/pages/handlers-read.js.map +0 -1
- package/dist/tools/pages/handlers-write.d.ts +0 -212
- package/dist/tools/pages/handlers-write.d.ts.map +0 -1
- package/dist/tools/pages/handlers-write.js +0 -418
- package/dist/tools/pages/handlers-write.js.map +0 -1
- package/dist/tools/pages/target.d.ts +0 -162
- package/dist/tools/pages/target.d.ts.map +0 -1
- package/dist/tools/pages/target.js +0 -239
- package/dist/tools/pages/target.js.map +0 -1
- package/dist/tools/sources/handlers-bind.d.ts +0 -148
- package/dist/tools/sources/handlers-bind.d.ts.map +0 -1
- package/dist/tools/sources/handlers-bind.js +0 -655
- package/dist/tools/sources/handlers-bind.js.map +0 -1
- package/dist/tools/sources/handlers.d.ts +0 -114
- package/dist/tools/sources/handlers.d.ts.map +0 -1
- package/dist/tools/sources/handlers.js +0 -285
- package/dist/tools/sources/handlers.js.map +0 -1
- package/dist/tools/sublayout/inspect-sublayout-handler.d.ts +0 -95
- package/dist/tools/sublayout/inspect-sublayout-handler.d.ts.map +0 -1
- package/dist/tools/sublayout/inspect-sublayout-handler.js +0 -181
- package/dist/tools/sublayout/inspect-sublayout-handler.js.map +0 -1
|
@@ -1,316 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Local Content Read — the two READ-ONLY handler bodies (proxy-mode arm).
|
|
3
|
-
*
|
|
4
|
-
* Both mirror {@see \WootsUp\BuilderMcp\LocalContent\LocalContentController}:
|
|
5
|
-
* resolve the site via the pool (done by the builder), GET the plugin REST
|
|
6
|
-
* endpoint, map into a compact text leg + strict `structuredContent`, and let
|
|
7
|
-
* `withSiteMeta` (in the builder) stamp the result-level `_meta`.
|
|
8
|
-
*
|
|
9
|
-
* READ-ONLY: no write, no ETag, no layout mutation — the API-Mapper boundary
|
|
10
|
-
* (DATEN-INGRESS lives in API Mapper; this is pure native-content DISCOVERY so
|
|
11
|
-
* a layout agent can pick the ids it later binds a source to). The shared PHP
|
|
12
|
-
* readers are capability-aware + published-only; this arm never widens that.
|
|
13
|
-
*
|
|
14
|
-
* @license MIT
|
|
15
|
-
*/
|
|
16
|
-
import { detailResult, tableResult } from '@getimo/mcp-toolkit';
|
|
17
|
-
import { applyMaxChars, columnsFromFields, projectFields, projectedFieldsEcho, projectionFeedback, projectionWarning, } from '../sparse-fields.js';
|
|
18
|
-
import { errorResult, structuredResult, } from '../tool-builder.js';
|
|
19
|
-
// ─── local_content_read — per-kind text-table columns ────────────────────────
|
|
20
|
-
/**
|
|
21
|
-
* The compact text-table columns per `kind` (the record shapes come from
|
|
22
|
-
* {@see \WootsUp\BuilderMcp\LocalContent\LocalContentProjection}). The TEXT leg
|
|
23
|
-
* is a readable overview; the full projected row rides in structuredContent.
|
|
24
|
-
*/
|
|
25
|
-
const READ_COLUMNS = {
|
|
26
|
-
entities: [
|
|
27
|
-
{ key: 'id', label: 'ID', width: 8, align: 'right' },
|
|
28
|
-
{ key: 'title', label: 'TITLE', width: 40 },
|
|
29
|
-
{ key: 'slug', label: 'SLUG', width: 24 },
|
|
30
|
-
{ key: 'status', label: 'STATUS', width: 10 },
|
|
31
|
-
{ key: 'type', label: 'TYPE', width: 14 },
|
|
32
|
-
],
|
|
33
|
-
terms: [
|
|
34
|
-
{ key: 'id', label: 'ID', width: 8, align: 'right' },
|
|
35
|
-
{ key: 'name', label: 'NAME', width: 32 },
|
|
36
|
-
{ key: 'slug', label: 'SLUG', width: 24 },
|
|
37
|
-
{ key: 'parent_id', label: 'PARENT', width: 8, align: 'right' },
|
|
38
|
-
{ key: 'count', label: 'COUNT', width: 8, align: 'right' },
|
|
39
|
-
],
|
|
40
|
-
users: [
|
|
41
|
-
{ key: 'id', label: 'ID', width: 8, align: 'right' },
|
|
42
|
-
{ key: 'display_name', label: 'NAME', width: 32 },
|
|
43
|
-
{ key: 'slug', label: 'SLUG', width: 24 },
|
|
44
|
-
{ key: 'post_count', label: 'POSTS', width: 8, align: 'right' },
|
|
45
|
-
],
|
|
46
|
-
fields: [
|
|
47
|
-
{ key: 'key', label: 'KEY', width: 28 },
|
|
48
|
-
{ key: 'label', label: 'LABEL', width: 28 },
|
|
49
|
-
{ key: 'type', label: 'TYPE', width: 14 },
|
|
50
|
-
{ key: 'group', label: 'GROUP', width: 20 },
|
|
51
|
-
],
|
|
52
|
-
menus: [
|
|
53
|
-
{ key: 'menu_id', label: 'ID', width: 8, align: 'right' },
|
|
54
|
-
{ key: 'menu_name', label: 'NAME', width: 36 },
|
|
55
|
-
{ key: 'item_count', label: 'ITEMS', width: 8, align: 'right' },
|
|
56
|
-
],
|
|
57
|
-
media: [
|
|
58
|
-
{ key: 'id', label: 'ID', width: 8, align: 'right' },
|
|
59
|
-
{ key: 'title', label: 'TITLE', width: 36 },
|
|
60
|
-
{ key: 'mime', label: 'MIME', width: 18 },
|
|
61
|
-
{ key: 'url', label: 'URL', width: 48 },
|
|
62
|
-
],
|
|
63
|
-
};
|
|
64
|
-
// ─── helpers ─────────────────────────────────────────────────────────────────
|
|
65
|
-
/** Coerce an unknown value to a `Record[]` (empty when not an array of objects). */
|
|
66
|
-
function asRows(value) {
|
|
67
|
-
if (!Array.isArray(value))
|
|
68
|
-
return [];
|
|
69
|
-
return value.filter((v) => v !== null && typeof v === 'object' && !Array.isArray(v));
|
|
70
|
-
}
|
|
71
|
-
/** Read a row field as a display string (empty string when absent/nullish). */
|
|
72
|
-
function str(row, key) {
|
|
73
|
-
const v = row[key];
|
|
74
|
-
if (v === null || v === undefined)
|
|
75
|
-
return '';
|
|
76
|
-
if (typeof v === 'string')
|
|
77
|
-
return v;
|
|
78
|
-
return String(v);
|
|
79
|
-
}
|
|
80
|
-
/** Read a row field as a number (0 when absent / non-numeric). */
|
|
81
|
-
function num(row, key) {
|
|
82
|
-
const v = row[key];
|
|
83
|
-
if (typeof v === 'number')
|
|
84
|
-
return v;
|
|
85
|
-
if (typeof v === 'string' && v !== '' && !Number.isNaN(Number(v)))
|
|
86
|
-
return Number(v);
|
|
87
|
-
return 0;
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* CONTENT_RENDER_GATEWAYS-24 — the sorted union of top-level keys observed
|
|
91
|
-
* across the returned rows (the discoverable field vocabulary). Emitted on
|
|
92
|
-
* EVERY read regardless of whether `fields[]` was passed, so a caller never has
|
|
93
|
-
* to make a discovery round-trip just to learn which keys a row carries. An
|
|
94
|
-
* empty array is only ever returned for a genuinely empty result set.
|
|
95
|
-
*/
|
|
96
|
-
function availableFieldVocabulary(rows) {
|
|
97
|
-
const seen = new Set();
|
|
98
|
-
for (const row of rows) {
|
|
99
|
-
for (const key of Object.keys(row))
|
|
100
|
-
seen.add(key);
|
|
101
|
-
}
|
|
102
|
-
return [...seen].sort();
|
|
103
|
-
}
|
|
104
|
-
// ─── local_content_types ─────────────────────────────────────────────────────
|
|
105
|
-
/**
|
|
106
|
-
* GET /local-content/types → the native content landscape (content_types,
|
|
107
|
-
* taxonomies, field_groups, capabilities). `kind` narrows to ONE array section
|
|
108
|
-
* (capabilities always included); `fields[]` sparse-projects the returned rows.
|
|
109
|
-
* Both are CLIENT-SIDE token-savers — the REST endpoint always emits the full
|
|
110
|
-
* landscape.
|
|
111
|
-
*/
|
|
112
|
-
export async function handleLocalContentTypes({ client }, { kind, fields, max_chars, }) {
|
|
113
|
-
try {
|
|
114
|
-
const data = await client.get('/local-content/types');
|
|
115
|
-
const wants = (section) => kind === undefined || kind === section;
|
|
116
|
-
const contentTypes = wants('content_types') ? asRows(data.content_types) : [];
|
|
117
|
-
const taxonomies = wants('taxonomies') ? asRows(data.taxonomies) : [];
|
|
118
|
-
const fieldGroups = wants('field_groups') ? asRows(data.field_groups) : [];
|
|
119
|
-
const capabilities = data.capabilities !== null &&
|
|
120
|
-
typeof data.capabilities === 'object' &&
|
|
121
|
-
!Array.isArray(data.capabilities)
|
|
122
|
-
? data.capabilities
|
|
123
|
-
: {};
|
|
124
|
-
// Sparse projection (client-side): applied identically to each section.
|
|
125
|
-
const projContentTypes = projectFields(contentTypes, fields, []);
|
|
126
|
-
const projTaxonomies = projectFields(taxonomies, fields, []);
|
|
127
|
-
const projFieldGroups = projectFields(fieldGroups, fields, []);
|
|
128
|
-
const echo = projectedFieldsEcho(fields, undefined);
|
|
129
|
-
// Feedback vocabulary computed over the UNION of returned rows.
|
|
130
|
-
const unionRows = [...contentTypes, ...taxonomies, ...fieldGroups];
|
|
131
|
-
const feedback = projectionFeedback(unionRows, fields);
|
|
132
|
-
const unknownNote = projectionWarning(feedback);
|
|
133
|
-
// CONTENT_RENDER_GATEWAYS-13: which landscape sections THIS response
|
|
134
|
-
// actually carries — so a downstream summariser knows an absent key
|
|
135
|
-
// means "narrowed out", never "none exist".
|
|
136
|
-
const sectionsIncluded = ['content_types', 'taxonomies', 'field_groups'].filter((section) => wants(section));
|
|
137
|
-
// CONTENT_RENDER_GATEWAYS-24: emit the row-key vocabulary ALWAYS.
|
|
138
|
-
const availableFields = availableFieldVocabulary(unionRows);
|
|
139
|
-
// The human-readable overview is built from the (unprojected) rows so it
|
|
140
|
-
// stays informative regardless of the `fields[]` trim on the payload.
|
|
141
|
-
const groups = [];
|
|
142
|
-
const capEntries = Object.entries(capabilities).map(([k, v]) => ({
|
|
143
|
-
key: k,
|
|
144
|
-
label: k,
|
|
145
|
-
value: typeof v === 'string' || typeof v === 'number' || typeof v === 'boolean'
|
|
146
|
-
? v
|
|
147
|
-
: String(v),
|
|
148
|
-
}));
|
|
149
|
-
if (capEntries.length > 0) {
|
|
150
|
-
groups.push({ label: 'Capabilities', entries: capEntries });
|
|
151
|
-
}
|
|
152
|
-
if (contentTypes.length > 0) {
|
|
153
|
-
groups.push({
|
|
154
|
-
label: `Content Types (${String(contentTypes.length)})`,
|
|
155
|
-
entries: contentTypes.map((ct) => {
|
|
156
|
-
const source = str(ct, 'source_name');
|
|
157
|
-
const bindable = ct.bindable === true;
|
|
158
|
-
const detail = `${String(num(ct, 'count'))} items` +
|
|
159
|
-
(bindable ? ', bindable' : ', not bindable') +
|
|
160
|
-
(source !== '' ? ` → source "${source}"` : '');
|
|
161
|
-
return { key: str(ct, 'name'), label: str(ct, 'label') || str(ct, 'name'), value: detail };
|
|
162
|
-
}),
|
|
163
|
-
});
|
|
164
|
-
}
|
|
165
|
-
if (taxonomies.length > 0) {
|
|
166
|
-
groups.push({
|
|
167
|
-
label: `Taxonomies (${String(taxonomies.length)})`,
|
|
168
|
-
entries: taxonomies.map((t) => {
|
|
169
|
-
const source = str(t, 'source_name');
|
|
170
|
-
const detail = `${String(num(t, 'term_count'))} terms` +
|
|
171
|
-
(t.hierarchical === true ? ', hierarchical' : '') +
|
|
172
|
-
(source !== '' ? ` → source "${source}"` : '');
|
|
173
|
-
return { key: str(t, 'name'), label: str(t, 'label') || str(t, 'name'), value: detail };
|
|
174
|
-
}),
|
|
175
|
-
});
|
|
176
|
-
}
|
|
177
|
-
if (fieldGroups.length > 0) {
|
|
178
|
-
groups.push({
|
|
179
|
-
label: `Field Groups (${String(fieldGroups.length)})`,
|
|
180
|
-
entries: fieldGroups.map((g) => ({
|
|
181
|
-
key: str(g, 'name'),
|
|
182
|
-
label: str(g, 'label') || str(g, 'name'),
|
|
183
|
-
value: `${String(num(g, 'field_count'))} fields`,
|
|
184
|
-
})),
|
|
185
|
-
});
|
|
186
|
-
}
|
|
187
|
-
if (groups.length === 0) {
|
|
188
|
-
groups.push({
|
|
189
|
-
label: 'Landscape',
|
|
190
|
-
entries: [
|
|
191
|
-
{
|
|
192
|
-
key: 'empty',
|
|
193
|
-
label: 'No native content discovered',
|
|
194
|
-
value: 'The site exposed no bindable content types / taxonomies / field groups.',
|
|
195
|
-
},
|
|
196
|
-
],
|
|
197
|
-
});
|
|
198
|
-
}
|
|
199
|
-
const toolkitResult = detailResult({
|
|
200
|
-
title: 'Native content landscape',
|
|
201
|
-
subtitle: `${String(contentTypes.length)} types · ${String(taxonomies.length)} taxonomies · ${String(fieldGroups.length)} field groups${unknownNote}`,
|
|
202
|
-
groups,
|
|
203
|
-
appendText: 'Next: yootheme_builder_local_content_read({ kind, type?, taxonomy? }) to fetch ' +
|
|
204
|
-
'the actual records (e.g. kind:"terms", taxonomy:"category" → the ids that ' +
|
|
205
|
-
'archive-scope a bound Grid via query_arguments:{id:<term_id>}).',
|
|
206
|
-
});
|
|
207
|
-
return structuredResult(applyMaxChars(toolkitResult, max_chars), {
|
|
208
|
-
// CONTENT_RENDER_GATEWAYS-13: OMIT an un-requested section entirely
|
|
209
|
-
// rather than emitting a misleading `[]` (empty must mean "none
|
|
210
|
-
// exist", never "you narrowed it out"). `sections_included` echoes
|
|
211
|
-
// exactly which sections this response carries.
|
|
212
|
-
...(wants('content_types') ? { content_types: projContentTypes } : {}),
|
|
213
|
-
...(wants('taxonomies') ? { taxonomies: projTaxonomies } : {}),
|
|
214
|
-
...(wants('field_groups') ? { field_groups: projFieldGroups } : {}),
|
|
215
|
-
capabilities,
|
|
216
|
-
sections_included: sectionsIncluded,
|
|
217
|
-
available_fields: availableFields,
|
|
218
|
-
...(echo !== undefined ? { projected_fields: [...echo] } : {}),
|
|
219
|
-
...(feedback !== undefined
|
|
220
|
-
? {
|
|
221
|
-
unknown_fields: [...feedback.unknown_fields],
|
|
222
|
-
...(unknownNote.trim() !== '' ? { projection_warning: unknownNote.trim() } : {}),
|
|
223
|
-
}
|
|
224
|
-
: {}),
|
|
225
|
-
});
|
|
226
|
-
}
|
|
227
|
-
catch (e) {
|
|
228
|
-
return errorResult({
|
|
229
|
-
error: e,
|
|
230
|
-
context: { kind: kind ?? null },
|
|
231
|
-
hint: 'Run yootheme_builder_diagnose to verify auth + that the host plugin is active.',
|
|
232
|
-
});
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
// ─── local_content_read ──────────────────────────────────────────────────────
|
|
236
|
-
/**
|
|
237
|
-
* GET /local-content/read → records for one `kind`, capability-aware +
|
|
238
|
-
* paginated ({@see LocalContentResult::toArray()} → `{items, total,
|
|
239
|
-
* next_offset}`). The PHP reader owns pagination (offset/limit) + visibility;
|
|
240
|
-
* this handler forwards the filters, sparse-projects the rows, and renders a
|
|
241
|
-
* per-kind text table.
|
|
242
|
-
*/
|
|
243
|
-
export async function handleLocalContentRead({ client }, { kind, type, taxonomy, search, status, parent_id, include_children, limit, offset, fields, max_chars, }) {
|
|
244
|
-
try {
|
|
245
|
-
const qs = new URLSearchParams();
|
|
246
|
-
qs.set('kind', kind);
|
|
247
|
-
if (typeof type === 'string' && type !== '')
|
|
248
|
-
qs.set('type', type);
|
|
249
|
-
if (typeof taxonomy === 'string' && taxonomy !== '')
|
|
250
|
-
qs.set('taxonomy', taxonomy);
|
|
251
|
-
if (typeof search === 'string' && search !== '')
|
|
252
|
-
qs.set('search', search);
|
|
253
|
-
if (typeof status === 'string' && status !== '')
|
|
254
|
-
qs.set('status', status);
|
|
255
|
-
if (typeof parent_id === 'number')
|
|
256
|
-
qs.set('parent_id', String(parent_id));
|
|
257
|
-
if (typeof include_children === 'boolean')
|
|
258
|
-
qs.set('include_children', String(include_children));
|
|
259
|
-
if (typeof limit === 'number')
|
|
260
|
-
qs.set('limit', String(limit));
|
|
261
|
-
if (typeof offset === 'number')
|
|
262
|
-
qs.set('offset', String(offset));
|
|
263
|
-
const data = await client.get(`/local-content/read?${qs.toString()}`);
|
|
264
|
-
const rows = asRows(data.items);
|
|
265
|
-
const total = typeof data.total === 'number' ? data.total : rows.length;
|
|
266
|
-
const nextOffset = typeof data.next_offset === 'number' ? data.next_offset : null;
|
|
267
|
-
const items = projectFields(rows, fields, []);
|
|
268
|
-
const echo = projectedFieldsEcho(fields, undefined);
|
|
269
|
-
const feedback = projectionFeedback(rows, fields);
|
|
270
|
-
const unknownNote = projectionWarning(feedback);
|
|
271
|
-
const useProjection = echo !== undefined && echo.length > 0;
|
|
272
|
-
const columns = useProjection
|
|
273
|
-
? columnsFromFields([...echo])
|
|
274
|
-
: [...READ_COLUMNS[kind]];
|
|
275
|
-
const pagedNote = nextOffset !== null
|
|
276
|
-
? ` of ${String(total)} — pass offset:${String(nextOffset)} for more`
|
|
277
|
-
: total > rows.length
|
|
278
|
-
? ` of ${String(total)}`
|
|
279
|
-
: '';
|
|
280
|
-
const toolkitResult = tableResult(useProjection ? items : rows, {
|
|
281
|
-
columns,
|
|
282
|
-
header: (count) => `${String(count)}${pagedNote} ${kind}${unknownNote}`,
|
|
283
|
-
footer: kind === 'terms'
|
|
284
|
-
? 'Use a term id to archive-scope a bound Grid: bind a source, then pass ' +
|
|
285
|
-
'query_arguments:{id:<term_id>} on yootheme_builder_element_bind_source.'
|
|
286
|
-
: 'Discover the landscape with yootheme_builder_local_content_types.',
|
|
287
|
-
});
|
|
288
|
-
return structuredResult(applyMaxChars(toolkitResult, max_chars), {
|
|
289
|
-
items,
|
|
290
|
-
total,
|
|
291
|
-
next_offset: nextOffset,
|
|
292
|
-
returned: rows.length,
|
|
293
|
-
// CONTENT_RENDER_GATEWAYS-24: the row-key vocabulary rides on EVERY
|
|
294
|
-
// read (not only when `fields[]` was passed), removing a discovery
|
|
295
|
-
// round-trip. Computed over the RAW rows (pre-projection).
|
|
296
|
-
available_fields: availableFieldVocabulary(rows),
|
|
297
|
-
...(echo !== undefined ? { projected_fields: [...echo] } : {}),
|
|
298
|
-
...(feedback !== undefined
|
|
299
|
-
? {
|
|
300
|
-
unknown_fields: [...feedback.unknown_fields],
|
|
301
|
-
...(unknownNote.trim() !== '' ? { projection_warning: unknownNote.trim() } : {}),
|
|
302
|
-
}
|
|
303
|
-
: {}),
|
|
304
|
-
});
|
|
305
|
-
}
|
|
306
|
-
catch (e) {
|
|
307
|
-
return errorResult({
|
|
308
|
-
error: e,
|
|
309
|
-
context: { kind, type, taxonomy, search, status, parent_id, include_children, limit, offset },
|
|
310
|
-
hint: 'Verify `kind` is one of entities|terms|users|fields|menus|media, and that ' +
|
|
311
|
-
'`taxonomy`/`type` exist — call yootheme_builder_local_content_types first to ' +
|
|
312
|
-
'see the landscape. Run yootheme_builder_diagnose for auth issues.',
|
|
313
|
-
});
|
|
314
|
-
}
|
|
315
|
-
}
|
|
316
|
-
//# sourceMappingURL=handlers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../../src/tools/local-content/handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `clean_implode_directives` handler — strip `props.source.props.*.implode`
|
|
3
|
-
* directives from an element binding via REST round-trip.
|
|
4
|
-
*
|
|
5
|
-
* Wave H5 (2026-05-26): destructive confirm-guard. The tool is now
|
|
6
|
-
* registered with `destructive()` annotation (was `mutating()`); per the
|
|
7
|
-
* MCP Goldstandard, every destructive tool MUST also expose a `confirm`
|
|
8
|
-
* input field + preview guard so an auto-acting agent cannot strip
|
|
9
|
-
* implode directives from a binding without an explicit second gate.
|
|
10
|
-
* Mirrors the `element_delete` pattern (handlers-write.ts).
|
|
11
|
-
*
|
|
12
|
-
* @license MIT
|
|
13
|
-
*/
|
|
14
|
-
import { z } from 'zod';
|
|
15
|
-
import { type RestClient } from '../../client.js';
|
|
16
|
-
import { type ToolResult } from '../tool-builder.js';
|
|
17
|
-
export declare const CLEAN_IMPLODE_OUTPUT_SCHEMA: z.ZodObject<{
|
|
18
|
-
template_id: z.ZodString;
|
|
19
|
-
element_path: z.ZodString;
|
|
20
|
-
cleaned_count: z.ZodNumber;
|
|
21
|
-
removed_directives: z.ZodArray<z.ZodObject<{
|
|
22
|
-
prop_name: z.ZodString;
|
|
23
|
-
directive: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
24
|
-
}, z.core.$strip>>;
|
|
25
|
-
new_etag: z.ZodOptional<z.ZodString>;
|
|
26
|
-
changed_paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
27
|
-
}, z.core.$strip>;
|
|
28
|
-
export interface CleanImplodeHandlerDeps {
|
|
29
|
-
readonly client: RestClient;
|
|
30
|
-
}
|
|
31
|
-
export declare function handleCleanImplodeDirectives({ client }: CleanImplodeHandlerDeps, { template_id, element_path, etag, confirm, }: {
|
|
32
|
-
template_id: string;
|
|
33
|
-
element_path: string;
|
|
34
|
-
etag: string;
|
|
35
|
-
confirm?: boolean;
|
|
36
|
-
}): Promise<ToolResult>;
|
|
37
|
-
//# sourceMappingURL=clean-implode-handler.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"clean-implode-handler.d.ts","sourceRoot":"","sources":["../../../src/tools/multi-items/clean-implode-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAuC,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACvF,OAAO,EAKH,KAAK,UAAU,EAClB,MAAM,oBAAoB,CAAC;AAE5B,eAAO,MAAM,2BAA2B;;;;;;;;;;iBAmBtC,CAAC;AAEH,MAAM,WAAW,uBAAuB;IACpC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAC/B;AAED,wBAAsB,4BAA4B,CAC9C,EAAE,MAAM,EAAE,EAAE,uBAAuB,EACnC,EACI,WAAW,EACX,YAAY,EACZ,IAAI,EACJ,OAAO,GACV,EAAE;IACC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB,GACF,OAAO,CAAC,UAAU,CAAC,CAgCrB"}
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `clean_implode_directives` handler — strip `props.source.props.*.implode`
|
|
3
|
-
* directives from an element binding via REST round-trip.
|
|
4
|
-
*
|
|
5
|
-
* Wave H5 (2026-05-26): destructive confirm-guard. The tool is now
|
|
6
|
-
* registered with `destructive()` annotation (was `mutating()`); per the
|
|
7
|
-
* MCP Goldstandard, every destructive tool MUST also expose a `confirm`
|
|
8
|
-
* input field + preview guard so an auto-acting agent cannot strip
|
|
9
|
-
* implode directives from a binding without an explicit second gate.
|
|
10
|
-
* Mirrors the `element_delete` pattern (handlers-write.ts).
|
|
11
|
-
*
|
|
12
|
-
* @license MIT
|
|
13
|
-
*/
|
|
14
|
-
import { z } from 'zod';
|
|
15
|
-
import { encodeElementPath, encodeTemplateId } from '../../client.js';
|
|
16
|
-
import { confirmGuard, errorResult, jsonResult, structuredResult, } from '../tool-builder.js';
|
|
17
|
-
export const CLEAN_IMPLODE_OUTPUT_SCHEMA = z.object({
|
|
18
|
-
template_id: z.string(),
|
|
19
|
-
element_path: z.string(),
|
|
20
|
-
cleaned_count: z.number(),
|
|
21
|
-
removed_directives: z.array(z.object({
|
|
22
|
-
prop_name: z.string(),
|
|
23
|
-
directive: z.record(z.string(), z.unknown()),
|
|
24
|
-
})),
|
|
25
|
-
// G2 / C0 (changed-path-on-write): the PHP success body appends the
|
|
26
|
-
// post-write etag + the JSON-Pointer / template-id path(s) it touched.
|
|
27
|
-
// handleCleanImplodeDirectives forwards the body VERBATIM via
|
|
28
|
-
// structuredResult, so these MUST be declared here — the host validates
|
|
29
|
-
// structuredContent under additionalProperties:false and a SUCCESS would
|
|
30
|
-
// otherwise trip -32602. Optional for back-compat. Mirrors
|
|
31
|
-
// PAGES_DELETE_OUTPUT_SCHEMA (pages/schemas.ts).
|
|
32
|
-
new_etag: z.string().optional(),
|
|
33
|
-
changed_paths: z.array(z.string()).optional(),
|
|
34
|
-
});
|
|
35
|
-
export async function handleCleanImplodeDirectives({ client }, { template_id, element_path, etag, confirm, }) {
|
|
36
|
-
// Wave H5 confirm-guard. Without `confirm: true` we return a preview
|
|
37
|
-
// payload and make NO HTTP call. The preview surfaces enough context
|
|
38
|
-
// (template + element_path + operation) for the host agent to ask the
|
|
39
|
-
// user to confirm. Symmetric with `element_delete` / `element_unbind_source`.
|
|
40
|
-
if (confirm !== true) {
|
|
41
|
-
return confirmGuard({
|
|
42
|
-
operation: 'strip implode directives from element binding',
|
|
43
|
-
details: { template_id, element_path },
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
const encoded = encodeElementPath(element_path);
|
|
47
|
-
try {
|
|
48
|
-
const data = await client.post(`/pages/${encodeTemplateId(template_id)}/elements/${encoded}/multi-items/clean-implode`, { body: {}, etag });
|
|
49
|
-
// The REST endpoint returns the canonical CLEAN_IMPLODE_OUTPUT_SCHEMA
|
|
50
|
-
// shape ({template_id, element_path, cleaned_count, removed_directives,
|
|
51
|
-
// new_etag}) — pass it through as structuredContent so the declared
|
|
52
|
-
// outputSchema is satisfied (a tool with an outputSchema MUST emit
|
|
53
|
-
// structuredContent, else the MCP SDK rejects with -32602).
|
|
54
|
-
return structuredResult(jsonResult(data), data);
|
|
55
|
-
}
|
|
56
|
-
catch (e) {
|
|
57
|
-
return errorResult({
|
|
58
|
-
error: e,
|
|
59
|
-
context: { template_id, element_path },
|
|
60
|
-
hint: 'On 412 refresh via yootheme_builder_get_etag and retry. On 404 verify the ' +
|
|
61
|
-
'element_path via yootheme_builder_element_list.',
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
//# sourceMappingURL=clean-implode-handler.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"clean-implode-handler.js","sourceRoot":"","sources":["../../../src/tools/multi-items/clean-implode-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAmB,MAAM,iBAAiB,CAAC;AACvF,OAAO,EACH,YAAY,EACZ,WAAW,EACX,UAAU,EACV,gBAAgB,GAEnB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IACzB,kBAAkB,EAAE,CAAC,CAAC,KAAK,CACvB,CAAC,CAAC,MAAM,CAAC;QACL,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;KAC/C,CAAC,CACL;IACD,oEAAoE;IACpE,uEAAuE;IACvE,8DAA8D;IAC9D,wEAAwE;IACxE,yEAAyE;IACzE,2DAA2D;IAC3D,iDAAiD;IACjD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC;AAMH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAC9C,EAAE,MAAM,EAA2B,EACnC,EACI,WAAW,EACX,YAAY,EACZ,IAAI,EACJ,OAAO,GAMV;IAED,qEAAqE;IACrE,qEAAqE;IACrE,sEAAsE;IACtE,8EAA8E;IAC9E,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,YAAY,CAAC;YAChB,SAAS,EAAE,+CAA+C;YAC1D,OAAO,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE;SACzC,CAAC,CAAC;IACP,CAAC;IACD,MAAM,OAAO,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAChD,IAAI,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAC1B,UAAU,gBAAgB,CAAC,WAAW,CAAC,aAAa,OAAO,4BAA4B,EACvF,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CACrB,CAAC;QACF,sEAAsE;QACtE,wEAAwE;QACxE,oEAAoE;QACpE,mEAAmE;QACnE,4DAA4D;QAC5D,OAAO,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,WAAW,CAAC;YACf,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE;YACtC,IAAI,EACA,4EAA4E;gBAC5E,iDAAiD;SACxD,CAAC,CAAC;IACP,CAAC;AACL,CAAC"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Multi-Items inspection format-sidecar.
|
|
3
|
-
*
|
|
4
|
-
* Wave-16 #34 (6.1): the `inspect_multi_items_binding` report is passed
|
|
5
|
-
* through verbatim to `structuredContent` (which must stay schema-pure),
|
|
6
|
-
* but the human-readable text leg is serialized from the same payload.
|
|
7
|
-
* A deeply-nested report (e.g. a fully-qualified element subtree under
|
|
8
|
-
* `props` / `minimal_layout`, or a future `children` array) would balloon
|
|
9
|
-
* that text leg without bound. `capInspectionDepth` walks the value and
|
|
10
|
-
* truncates any object/array whose depth exceeds the cap, replacing it
|
|
11
|
-
* with an `…and N more` marker so the agent still sees that the subtree
|
|
12
|
-
* was elided rather than silently dropped.
|
|
13
|
-
*
|
|
14
|
-
* Pure / stateless. `structuredContent` is never passed through this —
|
|
15
|
-
* only the text-render copy — so output-schema validation is unaffected.
|
|
16
|
-
*
|
|
17
|
-
* @license MIT
|
|
18
|
-
*/
|
|
19
|
-
/**
|
|
20
|
-
* Default recursion cap for the inspect text render. Objects/arrays at a
|
|
21
|
-
* depth strictly greater than this are collapsed to the `…and N more`
|
|
22
|
-
* marker. The root value sits at depth 0.
|
|
23
|
-
*/
|
|
24
|
-
export declare const MAX_INSPECTION_DEPTH = 3;
|
|
25
|
-
/**
|
|
26
|
-
* Recursively cap the depth of a JSON-serializable value.
|
|
27
|
-
*
|
|
28
|
-
* - Primitives (string / number / boolean / null / undefined) pass
|
|
29
|
-
* through untouched at any depth.
|
|
30
|
-
* - An object or array sitting AT `maxDepth` is replaced by the
|
|
31
|
-
* `…and N more` marker (N = its immediate child count) instead of
|
|
32
|
-
* recursing further.
|
|
33
|
-
* - Otherwise the container is rebuilt with each child capped at
|
|
34
|
-
* `depth + 1`.
|
|
35
|
-
*
|
|
36
|
-
* @param value the value to cap.
|
|
37
|
-
* @param maxDepth recursion cap (defaults to {@link MAX_INSPECTION_DEPTH}).
|
|
38
|
-
* @param depth current depth (internal; callers omit it).
|
|
39
|
-
*/
|
|
40
|
-
export declare function capInspectionDepth(value: unknown, maxDepth?: number, depth?: number): unknown;
|
|
41
|
-
//# sourceMappingURL=inspection-format.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"inspection-format.d.ts","sourceRoot":"","sources":["../../../../src/tools/multi-items/format/inspection-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAYtC;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAC9B,KAAK,EAAE,OAAO,EACd,QAAQ,GAAE,MAA6B,EACvC,KAAK,SAAI,GACV,OAAO,CAeT"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Multi-Items inspection format-sidecar.
|
|
3
|
-
*
|
|
4
|
-
* Wave-16 #34 (6.1): the `inspect_multi_items_binding` report is passed
|
|
5
|
-
* through verbatim to `structuredContent` (which must stay schema-pure),
|
|
6
|
-
* but the human-readable text leg is serialized from the same payload.
|
|
7
|
-
* A deeply-nested report (e.g. a fully-qualified element subtree under
|
|
8
|
-
* `props` / `minimal_layout`, or a future `children` array) would balloon
|
|
9
|
-
* that text leg without bound. `capInspectionDepth` walks the value and
|
|
10
|
-
* truncates any object/array whose depth exceeds the cap, replacing it
|
|
11
|
-
* with an `…and N more` marker so the agent still sees that the subtree
|
|
12
|
-
* was elided rather than silently dropped.
|
|
13
|
-
*
|
|
14
|
-
* Pure / stateless. `structuredContent` is never passed through this —
|
|
15
|
-
* only the text-render copy — so output-schema validation is unaffected.
|
|
16
|
-
*
|
|
17
|
-
* @license MIT
|
|
18
|
-
*/
|
|
19
|
-
/**
|
|
20
|
-
* Default recursion cap for the inspect text render. Objects/arrays at a
|
|
21
|
-
* depth strictly greater than this are collapsed to the `…and N more`
|
|
22
|
-
* marker. The root value sits at depth 0.
|
|
23
|
-
*/
|
|
24
|
-
export const MAX_INSPECTION_DEPTH = 3;
|
|
25
|
-
/** Render the marker that replaces a truncated subtree. */
|
|
26
|
-
function truncationMarker(childCount, maxDepth) {
|
|
27
|
-
return `…and ${String(childCount)} more (truncated at depth ${String(maxDepth)})`;
|
|
28
|
-
}
|
|
29
|
-
/** Number of immediate children an object/array exposes. */
|
|
30
|
-
function childCountOf(value) {
|
|
31
|
-
return Array.isArray(value) ? value.length : Object.keys(value).length;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Recursively cap the depth of a JSON-serializable value.
|
|
35
|
-
*
|
|
36
|
-
* - Primitives (string / number / boolean / null / undefined) pass
|
|
37
|
-
* through untouched at any depth.
|
|
38
|
-
* - An object or array sitting AT `maxDepth` is replaced by the
|
|
39
|
-
* `…and N more` marker (N = its immediate child count) instead of
|
|
40
|
-
* recursing further.
|
|
41
|
-
* - Otherwise the container is rebuilt with each child capped at
|
|
42
|
-
* `depth + 1`.
|
|
43
|
-
*
|
|
44
|
-
* @param value the value to cap.
|
|
45
|
-
* @param maxDepth recursion cap (defaults to {@link MAX_INSPECTION_DEPTH}).
|
|
46
|
-
* @param depth current depth (internal; callers omit it).
|
|
47
|
-
*/
|
|
48
|
-
export function capInspectionDepth(value, maxDepth = MAX_INSPECTION_DEPTH, depth = 0) {
|
|
49
|
-
if (value === null || typeof value !== 'object') {
|
|
50
|
-
return value;
|
|
51
|
-
}
|
|
52
|
-
if (depth >= maxDepth) {
|
|
53
|
-
return truncationMarker(childCountOf(value), maxDepth);
|
|
54
|
-
}
|
|
55
|
-
if (Array.isArray(value)) {
|
|
56
|
-
return value.map((item) => capInspectionDepth(item, maxDepth, depth + 1));
|
|
57
|
-
}
|
|
58
|
-
const out = {};
|
|
59
|
-
for (const [key, child] of Object.entries(value)) {
|
|
60
|
-
out[key] = capInspectionDepth(child, maxDepth, depth + 1);
|
|
61
|
-
}
|
|
62
|
-
return out;
|
|
63
|
-
}
|
|
64
|
-
//# sourceMappingURL=inspection-format.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"inspection-format.js","sourceRoot":"","sources":["../../../../src/tools/multi-items/format/inspection-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAEtC,2DAA2D;AAC3D,SAAS,gBAAgB,CAAC,UAAkB,EAAE,QAAgB;IAC1D,OAAO,QAAQ,MAAM,CAAC,UAAU,CAAC,6BAA6B,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;AACtF,CAAC;AAED,4DAA4D;AAC5D,SAAS,YAAY,CAAC,KAAa;IAC/B,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;AAC3E,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,kBAAkB,CAC9B,KAAc,EACd,WAAmB,oBAAoB,EACvC,KAAK,GAAG,CAAC;IAET,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9C,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,IAAI,KAAK,IAAI,QAAQ,EAAE,CAAC;QACpB,OAAO,gBAAgB,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;IAC9E,CAAC;IACD,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,EAAE,CAAC;QAC1E,GAAG,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC"}
|