@se-studio/contentful-cms 0.0.0-next16-20260822103555
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/CHANGELOG.md +1117 -0
- package/HOSTED.md +152 -0
- package/INSTALL.md +29 -0
- package/README.md +674 -0
- package/dist/audit/asset-usage.d.ts +29 -0
- package/dist/audit/asset-usage.d.ts.map +1 -0
- package/dist/audit/asset-usage.js +99 -0
- package/dist/audit/asset-usage.js.map +1 -0
- package/dist/audit/media-review-rules.d.ts +33 -0
- package/dist/audit/media-review-rules.d.ts.map +1 -0
- package/dist/audit/media-review-rules.js +120 -0
- package/dist/audit/media-review-rules.js.map +1 -0
- package/dist/audit/media-review.d.ts +45 -0
- package/dist/audit/media-review.d.ts.map +1 -0
- package/dist/audit/media-review.js +69 -0
- package/dist/audit/media-review.js.map +1 -0
- package/dist/bin/cms-edit.d.ts +4 -0
- package/dist/bin/cms-edit.d.ts.map +1 -0
- package/dist/bin/cms-edit.js +46 -0
- package/dist/bin/cms-edit.js.map +1 -0
- package/dist/cli/program.d.ts +9 -0
- package/dist/cli/program.d.ts.map +1 -0
- package/dist/cli/program.js +152 -0
- package/dist/cli/program.js.map +1 -0
- package/dist/cli/read-json-input.d.ts +27 -0
- package/dist/cli/read-json-input.d.ts.map +1 -0
- package/dist/cli/read-json-input.js +65 -0
- package/dist/cli/read-json-input.js.map +1 -0
- package/dist/cli/runner.d.ts +15 -0
- package/dist/cli/runner.d.ts.map +1 -0
- package/dist/cli/runner.js +113 -0
- package/dist/cli/runner.js.map +1 -0
- package/dist/commands/add-initial-fields.d.ts +27 -0
- package/dist/commands/add-initial-fields.d.ts.map +1 -0
- package/dist/commands/add-initial-fields.js +42 -0
- package/dist/commands/add-initial-fields.js.map +1 -0
- package/dist/commands/add-target-field.d.ts +15 -0
- package/dist/commands/add-target-field.d.ts.map +1 -0
- package/dist/commands/add-target-field.js +48 -0
- package/dist/commands/add-target-field.js.map +1 -0
- package/dist/commands/add.d.ts +4 -0
- package/dist/commands/add.d.ts.map +1 -0
- package/dist/commands/add.js +291 -0
- package/dist/commands/add.js.map +1 -0
- package/dist/commands/article-tags-from-json.d.ts +4 -0
- package/dist/commands/article-tags-from-json.d.ts.map +1 -0
- package/dist/commands/article-tags-from-json.js +55 -0
- package/dist/commands/article-tags-from-json.js.map +1 -0
- package/dist/commands/asset.d.ts +4 -0
- package/dist/commands/asset.d.ts.map +1 -0
- package/dist/commands/asset.js +685 -0
- package/dist/commands/asset.js.map +1 -0
- package/dist/commands/batch-assignments.d.ts +16 -0
- package/dist/commands/batch-assignments.d.ts.map +1 -0
- package/dist/commands/batch-assignments.js +61 -0
- package/dist/commands/batch-assignments.js.map +1 -0
- package/dist/commands/batch.d.ts +5 -0
- package/dist/commands/batch.d.ts.map +1 -0
- package/dist/commands/batch.js +272 -0
- package/dist/commands/batch.js.map +1 -0
- package/dist/commands/bulk-rtf-replace.d.ts +4 -0
- package/dist/commands/bulk-rtf-replace.d.ts.map +1 -0
- package/dist/commands/bulk-rtf-replace.js +103 -0
- package/dist/commands/bulk-rtf-replace.js.map +1 -0
- package/dist/commands/create-from-json.d.ts +8 -0
- package/dist/commands/create-from-json.d.ts.map +1 -0
- package/dist/commands/create-from-json.js +531 -0
- package/dist/commands/create-from-json.js.map +1 -0
- package/dist/commands/create-person-from-json.d.ts +4 -0
- package/dist/commands/create-person-from-json.d.ts.map +1 -0
- package/dist/commands/create-person-from-json.js +86 -0
- package/dist/commands/create-person-from-json.js.map +1 -0
- package/dist/commands/create-person.d.ts +4 -0
- package/dist/commands/create-person.d.ts.map +1 -0
- package/dist/commands/create-person.js +76 -0
- package/dist/commands/create-person.js.map +1 -0
- package/dist/commands/create-taxonomy-from-json.d.ts +4 -0
- package/dist/commands/create-taxonomy-from-json.d.ts.map +1 -0
- package/dist/commands/create-taxonomy-from-json.js +96 -0
- package/dist/commands/create-taxonomy-from-json.js.map +1 -0
- package/dist/commands/create-taxonomy.d.ts +36 -0
- package/dist/commands/create-taxonomy.d.ts.map +1 -0
- package/dist/commands/create-taxonomy.js +214 -0
- package/dist/commands/create-taxonomy.js.map +1 -0
- package/dist/commands/create.d.ts +4 -0
- package/dist/commands/create.d.ts.map +1 -0
- package/dist/commands/create.js +454 -0
- package/dist/commands/create.js.map +1 -0
- package/dist/commands/customer.d.ts +4 -0
- package/dist/commands/customer.d.ts.map +1 -0
- package/dist/commands/customer.js +56 -0
- package/dist/commands/customer.js.map +1 -0
- package/dist/commands/diagnose.d.ts +29 -0
- package/dist/commands/diagnose.d.ts.map +1 -0
- package/dist/commands/diagnose.js +119 -0
- package/dist/commands/diagnose.js.map +1 -0
- package/dist/commands/diff.d.ts +4 -0
- package/dist/commands/diff.d.ts.map +1 -0
- package/dist/commands/diff.js +33 -0
- package/dist/commands/diff.js.map +1 -0
- package/dist/commands/discard.d.ts +4 -0
- package/dist/commands/discard.d.ts.map +1 -0
- package/dist/commands/discard.js +63 -0
- package/dist/commands/discard.js.map +1 -0
- package/dist/commands/editor-pack.d.ts +4 -0
- package/dist/commands/editor-pack.d.ts.map +1 -0
- package/dist/commands/editor-pack.js +31 -0
- package/dist/commands/editor-pack.js.map +1 -0
- package/dist/commands/entry-lookup-target.d.ts +113 -0
- package/dist/commands/entry-lookup-target.d.ts.map +1 -0
- package/dist/commands/entry-lookup-target.js +235 -0
- package/dist/commands/entry-lookup-target.js.map +1 -0
- package/dist/commands/entry-search.d.ts +4 -0
- package/dist/commands/entry-search.d.ts.map +1 -0
- package/dist/commands/entry-search.js +91 -0
- package/dist/commands/entry-search.js.map +1 -0
- package/dist/commands/guide.d.ts +4 -0
- package/dist/commands/guide.d.ts.map +1 -0
- package/dist/commands/guide.js +18 -0
- package/dist/commands/guide.js.map +1 -0
- package/dist/commands/health.d.ts +4 -0
- package/dist/commands/health.d.ts.map +1 -0
- package/dist/commands/health.js +179 -0
- package/dist/commands/health.js.map +1 -0
- package/dist/commands/help.d.ts +4 -0
- package/dist/commands/help.d.ts.map +1 -0
- package/dist/commands/help.js +49 -0
- package/dist/commands/help.js.map +1 -0
- package/dist/commands/host-scaffold.d.ts +4 -0
- package/dist/commands/host-scaffold.d.ts.map +1 -0
- package/dist/commands/host-scaffold.js +104 -0
- package/dist/commands/host-scaffold.js.map +1 -0
- package/dist/commands/host-stage.d.ts +4 -0
- package/dist/commands/host-stage.d.ts.map +1 -0
- package/dist/commands/host-stage.js +60 -0
- package/dist/commands/host-stage.js.map +1 -0
- package/dist/commands/host.d.ts +3 -0
- package/dist/commands/host.d.ts.map +1 -0
- package/dist/commands/host.js +9 -0
- package/dist/commands/host.js.map +1 -0
- package/dist/commands/index-dump.d.ts +15 -0
- package/dist/commands/index-dump.d.ts.map +1 -0
- package/dist/commands/index-dump.js +207 -0
- package/dist/commands/index-dump.js.map +1 -0
- package/dist/commands/index.d.ts +4 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +107 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/commands/links.d.ts +4 -0
- package/dist/commands/links.d.ts.map +1 -0
- package/dist/commands/links.js +343 -0
- package/dist/commands/links.js.map +1 -0
- package/dist/commands/list.d.ts +4 -0
- package/dist/commands/list.d.ts.map +1 -0
- package/dist/commands/list.js +282 -0
- package/dist/commands/list.js.map +1 -0
- package/dist/commands/media.d.ts +4 -0
- package/dist/commands/media.d.ts.map +1 -0
- package/dist/commands/media.js +143 -0
- package/dist/commands/media.js.map +1 -0
- package/dist/commands/move.d.ts +3 -0
- package/dist/commands/move.d.ts.map +1 -0
- package/dist/commands/move.js +85 -0
- package/dist/commands/move.js.map +1 -0
- package/dist/commands/multiset-assignments.d.ts +16 -0
- package/dist/commands/multiset-assignments.d.ts.map +1 -0
- package/dist/commands/multiset-assignments.js +24 -0
- package/dist/commands/multiset-assignments.js.map +1 -0
- package/dist/commands/nav.d.ts +4 -0
- package/dist/commands/nav.d.ts.map +1 -0
- package/dist/commands/nav.js +327 -0
- package/dist/commands/nav.js.map +1 -0
- package/dist/commands/open.d.ts +4 -0
- package/dist/commands/open.d.ts.map +1 -0
- package/dist/commands/open.js +124 -0
- package/dist/commands/open.js.map +1 -0
- package/dist/commands/peek.d.ts +4 -0
- package/dist/commands/peek.d.ts.map +1 -0
- package/dist/commands/peek.js +105 -0
- package/dist/commands/peek.js.map +1 -0
- package/dist/commands/preview.d.ts +4 -0
- package/dist/commands/preview.d.ts.map +1 -0
- package/dist/commands/preview.js +242 -0
- package/dist/commands/preview.js.map +1 -0
- package/dist/commands/project.d.ts +4 -0
- package/dist/commands/project.d.ts.map +1 -0
- package/dist/commands/project.js +63 -0
- package/dist/commands/project.js.map +1 -0
- package/dist/commands/read.d.ts +4 -0
- package/dist/commands/read.d.ts.map +1 -0
- package/dist/commands/read.js +59 -0
- package/dist/commands/read.js.map +1 -0
- package/dist/commands/remove.d.ts +4 -0
- package/dist/commands/remove.d.ts.map +1 -0
- package/dist/commands/remove.js +104 -0
- package/dist/commands/remove.js.map +1 -0
- package/dist/commands/resolve.d.ts +4 -0
- package/dist/commands/resolve.d.ts.map +1 -0
- package/dist/commands/resolve.js +157 -0
- package/dist/commands/resolve.js.map +1 -0
- package/dist/commands/rtf.d.ts +4 -0
- package/dist/commands/rtf.d.ts.map +1 -0
- package/dist/commands/rtf.js +589 -0
- package/dist/commands/rtf.js.map +1 -0
- package/dist/commands/run.d.ts +4 -0
- package/dist/commands/run.d.ts.map +1 -0
- package/dist/commands/run.js +515 -0
- package/dist/commands/run.js.map +1 -0
- package/dist/commands/save-pending.d.ts +3 -0
- package/dist/commands/save-pending.d.ts.map +1 -0
- package/dist/commands/save-pending.js +5 -0
- package/dist/commands/save-pending.js.map +1 -0
- package/dist/commands/save.d.ts +4 -0
- package/dist/commands/save.d.ts.map +1 -0
- package/dist/commands/save.js +79 -0
- package/dist/commands/save.js.map +1 -0
- package/dist/commands/schema.d.ts +4 -0
- package/dist/commands/schema.d.ts.map +1 -0
- package/dist/commands/schema.js +283 -0
- package/dist/commands/schema.js.map +1 -0
- package/dist/commands/session-diff.d.ts +14 -0
- package/dist/commands/session-diff.d.ts.map +1 -0
- package/dist/commands/session-diff.js +238 -0
- package/dist/commands/session-diff.js.map +1 -0
- package/dist/commands/set.d.ts +4 -0
- package/dist/commands/set.d.ts.map +1 -0
- package/dist/commands/set.js +577 -0
- package/dist/commands/set.js.map +1 -0
- package/dist/commands/snapshot.d.ts +3 -0
- package/dist/commands/snapshot.d.ts.map +1 -0
- package/dist/commands/snapshot.js +31 -0
- package/dist/commands/snapshot.js.map +1 -0
- package/dist/commands/staged-upload.d.ts +4 -0
- package/dist/commands/staged-upload.d.ts.map +1 -0
- package/dist/commands/staged-upload.js +54 -0
- package/dist/commands/staged-upload.js.map +1 -0
- package/dist/commands/version.d.ts +4 -0
- package/dist/commands/version.d.ts.map +1 -0
- package/dist/commands/version.js +17 -0
- package/dist/commands/version.js.map +1 -0
- package/dist/config/data-root.d.ts +6 -0
- package/dist/config/data-root.d.ts.map +1 -0
- package/dist/config/data-root.js +21 -0
- package/dist/config/data-root.js.map +1 -0
- package/dist/config/hosted.d.ts +36 -0
- package/dist/config/hosted.d.ts.map +1 -0
- package/dist/config/hosted.js +113 -0
- package/dist/config/hosted.js.map +1 -0
- package/dist/config/load.d.ts +27 -0
- package/dist/config/load.d.ts.map +1 -0
- package/dist/config/load.js +139 -0
- package/dist/config/load.js.map +1 -0
- package/dist/config/types.d.ts +42 -0
- package/dist/config/types.d.ts.map +1 -0
- package/dist/config/types.js +2 -0
- package/dist/config/types.js.map +1 -0
- package/dist/contentful/article-tags-from-json.d.ts +25 -0
- package/dist/contentful/article-tags-from-json.d.ts.map +1 -0
- package/dist/contentful/article-tags-from-json.js +121 -0
- package/dist/contentful/article-tags-from-json.js.map +1 -0
- package/dist/contentful/article-type-resolve.d.ts +11 -0
- package/dist/contentful/article-type-resolve.d.ts.map +1 -0
- package/dist/contentful/article-type-resolve.js +35 -0
- package/dist/contentful/article-type-resolve.js.map +1 -0
- package/dist/contentful/asset-link-from-json.d.ts +17 -0
- package/dist/contentful/asset-link-from-json.d.ts.map +1 -0
- package/dist/contentful/asset-link-from-json.js +41 -0
- package/dist/contentful/asset-link-from-json.js.map +1 -0
- package/dist/contentful/assets.d.ts +54 -0
- package/dist/contentful/assets.d.ts.map +1 -0
- package/dist/contentful/assets.js +168 -0
- package/dist/contentful/assets.js.map +1 -0
- package/dist/contentful/bulk-rtf-replace.d.ts +29 -0
- package/dist/contentful/bulk-rtf-replace.d.ts.map +1 -0
- package/dist/contentful/bulk-rtf-replace.js +119 -0
- package/dist/contentful/bulk-rtf-replace.js.map +1 -0
- package/dist/contentful/cda-sync.d.ts +45 -0
- package/dist/contentful/cda-sync.d.ts.map +1 -0
- package/dist/contentful/cda-sync.js +382 -0
- package/dist/contentful/cda-sync.js.map +1 -0
- package/dist/contentful/client.d.ts +56 -0
- package/dist/contentful/client.d.ts.map +1 -0
- package/dist/contentful/client.js +78 -0
- package/dist/contentful/client.js.map +1 -0
- package/dist/contentful/cma-user-agent.d.ts +10 -0
- package/dist/contentful/cma-user-agent.d.ts.map +1 -0
- package/dist/contentful/cma-user-agent.js +20 -0
- package/dist/contentful/cma-user-agent.js.map +1 -0
- package/dist/contentful/content-type-disk-cache.d.ts +7 -0
- package/dist/contentful/content-type-disk-cache.d.ts.map +1 -0
- package/dist/contentful/content-type-disk-cache.js +42 -0
- package/dist/contentful/content-type-disk-cache.js.map +1 -0
- package/dist/contentful/delivery-token.d.ts +17 -0
- package/dist/contentful/delivery-token.d.ts.map +1 -0
- package/dist/contentful/delivery-token.js +104 -0
- package/dist/contentful/delivery-token.js.map +1 -0
- package/dist/contentful/entry-fields.d.ts +74 -0
- package/dist/contentful/entry-fields.d.ts.map +1 -0
- package/dist/contentful/entry-fields.js +403 -0
- package/dist/contentful/entry-fields.js.map +1 -0
- package/dist/contentful/entry-lookup.d.ts +16 -0
- package/dist/contentful/entry-lookup.d.ts.map +1 -0
- package/dist/contentful/entry-lookup.js +273 -0
- package/dist/contentful/entry-lookup.js.map +1 -0
- package/dist/contentful/featured-image-defaults.d.ts +16 -0
- package/dist/contentful/featured-image-defaults.d.ts.map +1 -0
- package/dist/contentful/featured-image-defaults.js +117 -0
- package/dist/contentful/featured-image-defaults.js.map +1 -0
- package/dist/contentful/fetch.d.ts +31 -0
- package/dist/contentful/fetch.d.ts.map +1 -0
- package/dist/contentful/fetch.js +115 -0
- package/dist/contentful/fetch.js.map +1 -0
- package/dist/contentful/field-metadata.d.ts +8 -0
- package/dist/contentful/field-metadata.d.ts.map +1 -0
- package/dist/contentful/field-metadata.js +12 -0
- package/dist/contentful/field-metadata.js.map +1 -0
- package/dist/contentful/field-value-from-json.d.ts +24 -0
- package/dist/contentful/field-value-from-json.d.ts.map +1 -0
- package/dist/contentful/field-value-from-json.js +206 -0
- package/dist/contentful/field-value-from-json.js.map +1 -0
- package/dist/contentful/hosted-asset-upload.d.ts +4 -0
- package/dist/contentful/hosted-asset-upload.d.ts.map +1 -0
- package/dist/contentful/hosted-asset-upload.js +9 -0
- package/dist/contentful/hosted-asset-upload.js.map +1 -0
- package/dist/contentful/link-fields.d.ts +22 -0
- package/dist/contentful/link-fields.d.ts.map +1 -0
- package/dist/contentful/link-fields.js +58 -0
- package/dist/contentful/link-fields.js.map +1 -0
- package/dist/contentful/linkedEntryFields.d.ts +29 -0
- package/dist/contentful/linkedEntryFields.d.ts.map +1 -0
- package/dist/contentful/linkedEntryFields.js +97 -0
- package/dist/contentful/linkedEntryFields.js.map +1 -0
- package/dist/contentful/list-entry-format.d.ts +18 -0
- package/dist/contentful/list-entry-format.d.ts.map +1 -0
- package/dist/contentful/list-entry-format.js +45 -0
- package/dist/contentful/list-entry-format.js.map +1 -0
- package/dist/contentful/media.d.ts +26 -0
- package/dist/contentful/media.d.ts.map +1 -0
- package/dist/contentful/media.js +82 -0
- package/dist/contentful/media.js.map +1 -0
- package/dist/contentful/person-create.d.ts +32 -0
- package/dist/contentful/person-create.d.ts.map +1 -0
- package/dist/contentful/person-create.js +102 -0
- package/dist/contentful/person-create.js.map +1 -0
- package/dist/contentful/reference-record.d.ts +45 -0
- package/dist/contentful/reference-record.d.ts.map +1 -0
- package/dist/contentful/reference-record.js +106 -0
- package/dist/contentful/reference-record.js.map +1 -0
- package/dist/contentful/references.d.ts +7 -0
- package/dist/contentful/references.d.ts.map +1 -0
- package/dist/contentful/references.js +12 -0
- package/dist/contentful/references.js.map +1 -0
- package/dist/contentful/regex.d.ts +14 -0
- package/dist/contentful/regex.d.ts.map +1 -0
- package/dist/contentful/regex.js +38 -0
- package/dist/contentful/regex.js.map +1 -0
- package/dist/contentful/resolve-content-type.d.ts +9 -0
- package/dist/contentful/resolve-content-type.d.ts.map +1 -0
- package/dist/contentful/resolve-content-type.js +38 -0
- package/dist/contentful/resolve-content-type.js.map +1 -0
- package/dist/contentful/scalar-value.d.ts +19 -0
- package/dist/contentful/scalar-value.d.ts.map +1 -0
- package/dist/contentful/scalar-value.js +95 -0
- package/dist/contentful/scalar-value.js.map +1 -0
- package/dist/contentful/set-field-schema.d.ts +32 -0
- package/dist/contentful/set-field-schema.d.ts.map +1 -0
- package/dist/contentful/set-field-schema.js +123 -0
- package/dist/contentful/set-field-schema.js.map +1 -0
- package/dist/contentful/slug-validation.d.ts +7 -0
- package/dist/contentful/slug-validation.d.ts.map +1 -0
- package/dist/contentful/slug-validation.js +15 -0
- package/dist/contentful/slug-validation.js.map +1 -0
- package/dist/contentful/upload-fetch.d.ts +11 -0
- package/dist/contentful/upload-fetch.d.ts.map +1 -0
- package/dist/contentful/upload-fetch.js +26 -0
- package/dist/contentful/upload-fetch.js.map +1 -0
- package/dist/contentful/upload-limits.d.ts +7 -0
- package/dist/contentful/upload-limits.d.ts.map +1 -0
- package/dist/contentful/upload-limits.js +13 -0
- package/dist/contentful/upload-limits.js.map +1 -0
- package/dist/contentful/write.d.ts +16 -0
- package/dist/contentful/write.d.ts.map +1 -0
- package/dist/contentful/write.js +97 -0
- package/dist/contentful/write.js.map +1 -0
- package/dist/editor-pack/capabilities.d.ts +105 -0
- package/dist/editor-pack/capabilities.d.ts.map +1 -0
- package/dist/editor-pack/capabilities.js +497 -0
- package/dist/editor-pack/capabilities.js.map +1 -0
- package/dist/editor-pack/generate.d.ts +19 -0
- package/dist/editor-pack/generate.d.ts.map +1 -0
- package/dist/editor-pack/generate.js +337 -0
- package/dist/editor-pack/generate.js.map +1 -0
- package/dist/editor-pack/load.d.ts +13 -0
- package/dist/editor-pack/load.d.ts.map +1 -0
- package/dist/editor-pack/load.js +99 -0
- package/dist/editor-pack/load.js.map +1 -0
- package/dist/editor-pack/parse-constants.d.ts +23 -0
- package/dist/editor-pack/parse-constants.d.ts.map +1 -0
- package/dist/editor-pack/parse-constants.js +99 -0
- package/dist/editor-pack/parse-constants.js.map +1 -0
- package/dist/editor-pack/parse-guidelines.d.ts +17 -0
- package/dist/editor-pack/parse-guidelines.d.ts.map +1 -0
- package/dist/editor-pack/parse-guidelines.js +93 -0
- package/dist/editor-pack/parse-guidelines.js.map +1 -0
- package/dist/editor-pack/parse-registrations.d.ts +7 -0
- package/dist/editor-pack/parse-registrations.d.ts.map +1 -0
- package/dist/editor-pack/parse-registrations.js +57 -0
- package/dist/editor-pack/parse-registrations.js.map +1 -0
- package/dist/editor-pack/production-site.d.ts +3 -0
- package/dist/editor-pack/production-site.d.ts.map +1 -0
- package/dist/editor-pack/production-site.js +68 -0
- package/dist/editor-pack/production-site.js.map +1 -0
- package/dist/generated/hosted-guide.d.ts +2 -0
- package/dist/generated/hosted-guide.d.ts.map +1 -0
- package/dist/generated/hosted-guide.js +3 -0
- package/dist/generated/hosted-guide.js.map +1 -0
- package/dist/generated/version.d.ts +3 -0
- package/dist/generated/version.d.ts.map +1 -0
- package/dist/generated/version.js +4 -0
- package/dist/generated/version.js.map +1 -0
- package/dist/hosted/customer-playbooks.d.ts +23 -0
- package/dist/hosted/customer-playbooks.d.ts.map +1 -0
- package/dist/hosted/customer-playbooks.js +69 -0
- package/dist/hosted/customer-playbooks.js.map +1 -0
- package/dist/hosted/index.d.ts +30 -0
- package/dist/hosted/index.d.ts.map +1 -0
- package/dist/hosted/index.js +29 -0
- package/dist/hosted/index.js.map +1 -0
- package/dist/hosted/next/HostedPageShell.d.ts +18 -0
- package/dist/hosted/next/HostedPageShell.d.ts.map +1 -0
- package/dist/hosted/next/HostedPageShell.js +12 -0
- package/dist/hosted/next/HostedPageShell.js.map +1 -0
- package/dist/hosted/next/claude-connect.d.ts +8 -0
- package/dist/hosted/next/claude-connect.d.ts.map +1 -0
- package/dist/hosted/next/claude-connect.js +23 -0
- package/dist/hosted/next/claude-connect.js.map +1 -0
- package/dist/hosted/next/context.d.ts +3 -0
- package/dist/hosted/next/context.d.ts.map +1 -0
- package/dist/hosted/next/context.js +11 -0
- package/dist/hosted/next/context.js.map +1 -0
- package/dist/hosted/next/editor-pack-path.d.ts +2 -0
- package/dist/hosted/next/editor-pack-path.d.ts.map +1 -0
- package/dist/hosted/next/editor-pack-path.js +6 -0
- package/dist/hosted/next/editor-pack-path.js.map +1 -0
- package/dist/hosted/next/page-styles.d.ts +31 -0
- package/dist/hosted/next/page-styles.d.ts.map +1 -0
- package/dist/hosted/next/page-styles.js +166 -0
- package/dist/hosted/next/page-styles.js.map +1 -0
- package/dist/hosted/next/pages/CmsEditPage.d.ts +2 -0
- package/dist/hosted/next/pages/CmsEditPage.d.ts.map +1 -0
- package/dist/hosted/next/pages/CmsEditPage.js +24 -0
- package/dist/hosted/next/pages/CmsEditPage.js.map +1 -0
- package/dist/hosted/next/pages/ContentfulCallbackPage.d.ts +2 -0
- package/dist/hosted/next/pages/ContentfulCallbackPage.d.ts.map +1 -0
- package/dist/hosted/next/pages/ContentfulCallbackPage.js +47 -0
- package/dist/hosted/next/pages/ContentfulCallbackPage.js.map +1 -0
- package/dist/hosted/next/pages/CustomerPlaybookPage.d.ts +8 -0
- package/dist/hosted/next/pages/CustomerPlaybookPage.d.ts.map +1 -0
- package/dist/hosted/next/pages/CustomerPlaybookPage.js +24 -0
- package/dist/hosted/next/pages/CustomerPlaybookPage.js.map +1 -0
- package/dist/hosted/next/pages/CustomerPlaybooksPage.d.ts +2 -0
- package/dist/hosted/next/pages/CustomerPlaybooksPage.d.ts.map +1 -0
- package/dist/hosted/next/pages/CustomerPlaybooksPage.js +29 -0
- package/dist/hosted/next/pages/CustomerPlaybooksPage.js.map +1 -0
- package/dist/hosted/next/pages/HomePage.d.ts +2 -0
- package/dist/hosted/next/pages/HomePage.d.ts.map +1 -0
- package/dist/hosted/next/pages/HomePage.js +37 -0
- package/dist/hosted/next/pages/HomePage.js.map +1 -0
- package/dist/hosted/next/redis.d.ts +5 -0
- package/dist/hosted/next/redis.d.ts.map +1 -0
- package/dist/hosted/next/redis.js +49 -0
- package/dist/hosted/next/redis.js.map +1 -0
- package/dist/hosted/next/routes/connect.d.ts +2 -0
- package/dist/hosted/next/routes/connect.d.ts.map +1 -0
- package/dist/hosted/next/routes/connect.js +19 -0
- package/dist/hosted/next/routes/connect.js.map +1 -0
- package/dist/hosted/next/routes/customer-index.d.ts +2 -0
- package/dist/hosted/next/routes/customer-index.d.ts.map +1 -0
- package/dist/hosted/next/routes/customer-index.js +12 -0
- package/dist/hosted/next/routes/customer-index.js.map +1 -0
- package/dist/hosted/next/routes/customer-resource.d.ts +8 -0
- package/dist/hosted/next/routes/customer-resource.d.ts.map +1 -0
- package/dist/hosted/next/routes/customer-resource.js +19 -0
- package/dist/hosted/next/routes/customer-resource.js.map +1 -0
- package/dist/hosted/next/routes/health.d.ts +2 -0
- package/dist/hosted/next/routes/health.d.ts.map +1 -0
- package/dist/hosted/next/routes/health.js +82 -0
- package/dist/hosted/next/routes/health.js.map +1 -0
- package/dist/hosted/next/routes/link-contentful.d.ts +2 -0
- package/dist/hosted/next/routes/link-contentful.d.ts.map +1 -0
- package/dist/hosted/next/routes/link-contentful.js +6 -0
- package/dist/hosted/next/routes/link-contentful.js.map +1 -0
- package/dist/hosted/next/routes/mcp.d.ts +4 -0
- package/dist/hosted/next/routes/mcp.d.ts.map +1 -0
- package/dist/hosted/next/routes/mcp.js +116 -0
- package/dist/hosted/next/routes/mcp.js.map +1 -0
- package/dist/hosted/next/routes/oauth-authorization-server.d.ts +2 -0
- package/dist/hosted/next/routes/oauth-authorization-server.d.ts.map +1 -0
- package/dist/hosted/next/routes/oauth-authorization-server.js +5 -0
- package/dist/hosted/next/routes/oauth-authorization-server.js.map +1 -0
- package/dist/hosted/next/routes/oauth-authorize.d.ts +2 -0
- package/dist/hosted/next/routes/oauth-authorize.d.ts.map +1 -0
- package/dist/hosted/next/routes/oauth-authorize.js +6 -0
- package/dist/hosted/next/routes/oauth-authorize.js.map +1 -0
- package/dist/hosted/next/routes/oauth-protected-resource.d.ts +2 -0
- package/dist/hosted/next/routes/oauth-protected-resource.d.ts.map +1 -0
- package/dist/hosted/next/routes/oauth-protected-resource.js +5 -0
- package/dist/hosted/next/routes/oauth-protected-resource.js.map +1 -0
- package/dist/hosted/next/routes/oauth-register.d.ts +2 -0
- package/dist/hosted/next/routes/oauth-register.d.ts.map +1 -0
- package/dist/hosted/next/routes/oauth-register.js +6 -0
- package/dist/hosted/next/routes/oauth-register.js.map +1 -0
- package/dist/hosted/next/routes/oauth-token.d.ts +2 -0
- package/dist/hosted/next/routes/oauth-token.d.ts.map +1 -0
- package/dist/hosted/next/routes/oauth-token.js +6 -0
- package/dist/hosted/next/routes/oauth-token.js.map +1 -0
- package/dist/hosted/next/routes/staged-upload.d.ts +2 -0
- package/dist/hosted/next/routes/staged-upload.d.ts.map +1 -0
- package/dist/hosted/next/routes/staged-upload.js +83 -0
- package/dist/hosted/next/routes/staged-upload.js.map +1 -0
- package/dist/hosted/next/stage-site.d.ts +11 -0
- package/dist/hosted/next/stage-site.d.ts.map +1 -0
- package/dist/hosted/next/stage-site.js +50 -0
- package/dist/hosted/next/stage-site.js.map +1 -0
- package/dist/hosted/oauth/auth.d.ts +15 -0
- package/dist/hosted/oauth/auth.d.ts.map +1 -0
- package/dist/hosted/oauth/auth.js +54 -0
- package/dist/hosted/oauth/auth.js.map +1 -0
- package/dist/hosted/oauth/cached-cma.d.ts +14 -0
- package/dist/hosted/oauth/cached-cma.d.ts.map +1 -0
- package/dist/hosted/oauth/cached-cma.js +41 -0
- package/dist/hosted/oauth/cached-cma.js.map +1 -0
- package/dist/hosted/oauth/complete.d.ts +16 -0
- package/dist/hosted/oauth/complete.d.ts.map +1 -0
- package/dist/hosted/oauth/complete.js +55 -0
- package/dist/hosted/oauth/complete.js.map +1 -0
- package/dist/hosted/oauth/config.d.ts +7 -0
- package/dist/hosted/oauth/config.d.ts.map +1 -0
- package/dist/hosted/oauth/config.js +33 -0
- package/dist/hosted/oauth/config.js.map +1 -0
- package/dist/hosted/oauth/handlers.d.ts +18 -0
- package/dist/hosted/oauth/handlers.d.ts.map +1 -0
- package/dist/hosted/oauth/handlers.js +262 -0
- package/dist/hosted/oauth/handlers.js.map +1 -0
- package/dist/hosted/oauth/jwt.d.ts +9 -0
- package/dist/hosted/oauth/jwt.d.ts.map +1 -0
- package/dist/hosted/oauth/jwt.js +31 -0
- package/dist/hosted/oauth/jwt.js.map +1 -0
- package/dist/hosted/oauth/log.d.ts +12 -0
- package/dist/hosted/oauth/log.d.ts.map +1 -0
- package/dist/hosted/oauth/log.js +71 -0
- package/dist/hosted/oauth/log.js.map +1 -0
- package/dist/hosted/oauth/pat-cache.d.ts +11 -0
- package/dist/hosted/oauth/pat-cache.d.ts.map +1 -0
- package/dist/hosted/oauth/pat-cache.js +42 -0
- package/dist/hosted/oauth/pat-cache.js.map +1 -0
- package/dist/hosted/oauth/pkce.d.ts +3 -0
- package/dist/hosted/oauth/pkce.d.ts.map +1 -0
- package/dist/hosted/oauth/pkce.js +9 -0
- package/dist/hosted/oauth/pkce.js.map +1 -0
- package/dist/hosted/oauth/redirect-uri.d.ts +10 -0
- package/dist/hosted/oauth/redirect-uri.d.ts.map +1 -0
- package/dist/hosted/oauth/redirect-uri.js +61 -0
- package/dist/hosted/oauth/redirect-uri.js.map +1 -0
- package/dist/hosted/oauth/refresh.d.ts +22 -0
- package/dist/hosted/oauth/refresh.d.ts.map +1 -0
- package/dist/hosted/oauth/refresh.js +46 -0
- package/dist/hosted/oauth/refresh.js.map +1 -0
- package/dist/hosted/oauth/store.d.ts +75 -0
- package/dist/hosted/oauth/store.d.ts.map +1 -0
- package/dist/hosted/oauth/store.js +217 -0
- package/dist/hosted/oauth/store.js.map +1 -0
- package/dist/hosted/oauth/token-grant-response.d.ts +7 -0
- package/dist/hosted/oauth/token-grant-response.d.ts.map +1 -0
- package/dist/hosted/oauth/token-grant-response.js +34 -0
- package/dist/hosted/oauth/token-grant-response.js.map +1 -0
- package/dist/hosted/parse-customer-resource.d.ts +3 -0
- package/dist/hosted/parse-customer-resource.d.ts.map +1 -0
- package/dist/hosted/parse-customer-resource.js +16 -0
- package/dist/hosted/parse-customer-resource.js.map +1 -0
- package/dist/index/blob.d.ts +5 -0
- package/dist/index/blob.d.ts.map +1 -0
- package/dist/index/blob.js +15 -0
- package/dist/index/blob.js.map +1 -0
- package/dist/index/cache-keys.d.ts +9 -0
- package/dist/index/cache-keys.d.ts.map +1 -0
- package/dist/index/cache-keys.js +13 -0
- package/dist/index/cache-keys.js.map +1 -0
- package/dist/index/cache-store.d.ts +31 -0
- package/dist/index/cache-store.d.ts.map +1 -0
- package/dist/index/cache-store.js +17 -0
- package/dist/index/cache-store.js.map +1 -0
- package/dist/index/db.d.ts +12 -0
- package/dist/index/db.d.ts.map +1 -0
- package/dist/index/db.js +49 -0
- package/dist/index/db.js.map +1 -0
- package/dist/index/distributed-sync-lock.d.ts +3 -0
- package/dist/index/distributed-sync-lock.d.ts.map +1 -0
- package/dist/index/distributed-sync-lock.js +22 -0
- package/dist/index/distributed-sync-lock.js.map +1 -0
- package/dist/index/errors.d.ts +18 -0
- package/dist/index/errors.d.ts.map +1 -0
- package/dist/index/errors.js +18 -0
- package/dist/index/errors.js.map +1 -0
- package/dist/index/file-index-cache.d.ts +16 -0
- package/dist/index/file-index-cache.d.ts.map +1 -0
- package/dist/index/file-index-cache.js +103 -0
- package/dist/index/file-index-cache.js.map +1 -0
- package/dist/index/hydrate.d.ts +8 -0
- package/dist/index/hydrate.d.ts.map +1 -0
- package/dist/index/hydrate.js +26 -0
- package/dist/index/hydrate.js.map +1 -0
- package/dist/index/invalidate.d.ts +28 -0
- package/dist/index/invalidate.d.ts.map +1 -0
- package/dist/index/invalidate.js +114 -0
- package/dist/index/invalidate.js.map +1 -0
- package/dist/index/mode.d.ts +7 -0
- package/dist/index/mode.d.ts.map +1 -0
- package/dist/index/mode.js +9 -0
- package/dist/index/mode.js.map +1 -0
- package/dist/index/patch-index.d.ts +12 -0
- package/dist/index/patch-index.d.ts.map +1 -0
- package/dist/index/patch-index.js +80 -0
- package/dist/index/patch-index.js.map +1 -0
- package/dist/index/paths.d.ts +6 -0
- package/dist/index/paths.d.ts.map +1 -0
- package/dist/index/paths.js +23 -0
- package/dist/index/paths.js.map +1 -0
- package/dist/index/publish-cache.d.ts +5 -0
- package/dist/index/publish-cache.d.ts.map +1 -0
- package/dist/index/publish-cache.js +26 -0
- package/dist/index/publish-cache.js.map +1 -0
- package/dist/index/query.d.ts +139 -0
- package/dist/index/query.d.ts.map +1 -0
- package/dist/index/query.js +451 -0
- package/dist/index/query.js.map +1 -0
- package/dist/index/redis-index-cache.d.ts +24 -0
- package/dist/index/redis-index-cache.d.ts.map +1 -0
- package/dist/index/redis-index-cache.js +83 -0
- package/dist/index/redis-index-cache.js.map +1 -0
- package/dist/index/reference-lookup.d.ts +18 -0
- package/dist/index/reference-lookup.d.ts.map +1 -0
- package/dist/index/reference-lookup.js +123 -0
- package/dist/index/reference-lookup.js.map +1 -0
- package/dist/index/require.d.ts +22 -0
- package/dist/index/require.d.ts.map +1 -0
- package/dist/index/require.js +74 -0
- package/dist/index/require.js.map +1 -0
- package/dist/index/run-sync.d.ts +22 -0
- package/dist/index/run-sync.d.ts.map +1 -0
- package/dist/index/run-sync.js +76 -0
- package/dist/index/run-sync.js.map +1 -0
- package/dist/index/schema.d.ts +19 -0
- package/dist/index/schema.d.ts.map +1 -0
- package/dist/index/schema.js +81 -0
- package/dist/index/schema.js.map +1 -0
- package/dist/index/sync-lock.d.ts +9 -0
- package/dist/index/sync-lock.d.ts.map +1 -0
- package/dist/index/sync-lock.js +98 -0
- package/dist/index/sync-lock.js.map +1 -0
- package/dist/index/sync-log.d.ts +7 -0
- package/dist/index/sync-log.d.ts.map +1 -0
- package/dist/index/sync-log.js +23 -0
- package/dist/index/sync-log.js.map +1 -0
- package/dist/index/sync.d.ts +50 -0
- package/dist/index/sync.d.ts.map +1 -0
- package/dist/index/sync.js +292 -0
- package/dist/index/sync.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/guide.d.ts +21 -0
- package/dist/mcp/guide.d.ts.map +1 -0
- package/dist/mcp/guide.js +97 -0
- package/dist/mcp/guide.js.map +1 -0
- package/dist/mcp/hosted-metadata.d.ts +12 -0
- package/dist/mcp/hosted-metadata.d.ts.map +1 -0
- package/dist/mcp/hosted-metadata.js +30 -0
- package/dist/mcp/hosted-metadata.js.map +1 -0
- package/dist/mcp/http-handler.d.ts +15 -0
- package/dist/mcp/http-handler.d.ts.map +1 -0
- package/dist/mcp/http-handler.js +38 -0
- package/dist/mcp/http-handler.js.map +1 -0
- package/dist/mcp/prompts/onboarding.d.ts +4 -0
- package/dist/mcp/prompts/onboarding.d.ts.map +1 -0
- package/dist/mcp/prompts/onboarding.js +398 -0
- package/dist/mcp/prompts/onboarding.js.map +1 -0
- package/dist/mcp/resources/customer.d.ts +7 -0
- package/dist/mcp/resources/customer.d.ts.map +1 -0
- package/dist/mcp/resources/customer.js +72 -0
- package/dist/mcp/resources/customer.js.map +1 -0
- package/dist/mcp/resources/guide.d.ts +4 -0
- package/dist/mcp/resources/guide.d.ts.map +1 -0
- package/dist/mcp/resources/guide.js +16 -0
- package/dist/mcp/resources/guide.js.map +1 -0
- package/dist/mcp/server.d.ts +17 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +63 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/mcp/session-args.d.ts +10 -0
- package/dist/mcp/session-args.d.ts.map +1 -0
- package/dist/mcp/session-args.js +28 -0
- package/dist/mcp/session-args.js.map +1 -0
- package/dist/mcp/tools/cms-edit.d.ts +10 -0
- package/dist/mcp/tools/cms-edit.d.ts.map +1 -0
- package/dist/mcp/tools/cms-edit.js +148 -0
- package/dist/mcp/tools/cms-edit.js.map +1 -0
- package/dist/mcp/tools/customer.d.ts +8 -0
- package/dist/mcp/tools/customer.d.ts.map +1 -0
- package/dist/mcp/tools/customer.js +41 -0
- package/dist/mcp/tools/customer.js.map +1 -0
- package/dist/mcp/tools/help.d.ts +4 -0
- package/dist/mcp/tools/help.d.ts.map +1 -0
- package/dist/mcp/tools/help.js +23 -0
- package/dist/mcp/tools/help.js.map +1 -0
- package/dist/mcp/tools/media.d.ts +4 -0
- package/dist/mcp/tools/media.d.ts.map +1 -0
- package/dist/mcp/tools/media.js +176 -0
- package/dist/mcp/tools/media.js.map +1 -0
- package/dist/mcp/tools/staged-upload.d.ts +4 -0
- package/dist/mcp/tools/staged-upload.d.ts.map +1 -0
- package/dist/mcp/tools/staged-upload.js +77 -0
- package/dist/mcp/tools/staged-upload.js.map +1 -0
- package/dist/mcp/types.d.ts +2 -0
- package/dist/mcp/types.d.ts.map +1 -0
- package/dist/mcp/types.js +2 -0
- package/dist/mcp/types.js.map +1 -0
- package/dist/media-pipeline/actions.d.ts +32 -0
- package/dist/media-pipeline/actions.d.ts.map +1 -0
- package/dist/media-pipeline/actions.js +436 -0
- package/dist/media-pipeline/actions.js.map +1 -0
- package/dist/media-pipeline/client.d.ts +71 -0
- package/dist/media-pipeline/client.d.ts.map +1 -0
- package/dist/media-pipeline/client.js +79 -0
- package/dist/media-pipeline/client.js.map +1 -0
- package/dist/media-pipeline/config.d.ts +17 -0
- package/dist/media-pipeline/config.d.ts.map +1 -0
- package/dist/media-pipeline/config.js +52 -0
- package/dist/media-pipeline/config.js.map +1 -0
- package/dist/media-pipeline/import-filter.d.ts +36 -0
- package/dist/media-pipeline/import-filter.d.ts.map +1 -0
- package/dist/media-pipeline/import-filter.js +53 -0
- package/dist/media-pipeline/import-filter.js.map +1 -0
- package/dist/media-pipeline/import.d.ts +25 -0
- package/dist/media-pipeline/import.d.ts.map +1 -0
- package/dist/media-pipeline/import.js +225 -0
- package/dist/media-pipeline/import.js.map +1 -0
- package/dist/media-pipeline/index.d.ts +6 -0
- package/dist/media-pipeline/index.d.ts.map +1 -0
- package/dist/media-pipeline/index.js +6 -0
- package/dist/media-pipeline/index.js.map +1 -0
- package/dist/media-pipeline/job-store.d.ts +49 -0
- package/dist/media-pipeline/job-store.d.ts.map +1 -0
- package/dist/media-pipeline/job-store.js +215 -0
- package/dist/media-pipeline/job-store.js.map +1 -0
- package/dist/media-pipeline/limits.d.ts +19 -0
- package/dist/media-pipeline/limits.d.ts.map +1 -0
- package/dist/media-pipeline/limits.js +19 -0
- package/dist/media-pipeline/limits.js.map +1 -0
- package/dist/media-pipeline/log.d.ts +3 -0
- package/dist/media-pipeline/log.d.ts.map +1 -0
- package/dist/media-pipeline/log.js +12 -0
- package/dist/media-pipeline/log.js.map +1 -0
- package/dist/media-pipeline/validate.d.ts +18 -0
- package/dist/media-pipeline/validate.d.ts.map +1 -0
- package/dist/media-pipeline/validate.js +38 -0
- package/dist/media-pipeline/validate.js.map +1 -0
- package/dist/output/json.d.ts +53 -0
- package/dist/output/json.d.ts.map +1 -0
- package/dist/output/json.js +110 -0
- package/dist/output/json.js.map +1 -0
- package/dist/output/mode.d.ts +3 -0
- package/dist/output/mode.d.ts.map +1 -0
- package/dist/output/mode.js +16 -0
- package/dist/output/mode.js.map +1 -0
- package/dist/output/print.d.ts +14 -0
- package/dist/output/print.d.ts.map +1 -0
- package/dist/output/print.js +61 -0
- package/dist/output/print.js.map +1 -0
- package/dist/output/terminal-table.d.ts +15 -0
- package/dist/output/terminal-table.d.ts.map +1 -0
- package/dist/output/terminal-table.js +60 -0
- package/dist/output/terminal-table.js.map +1 -0
- package/dist/preview/capture-urls.d.ts +12 -0
- package/dist/preview/capture-urls.d.ts.map +1 -0
- package/dist/preview/capture-urls.js +41 -0
- package/dist/preview/capture-urls.js.map +1 -0
- package/dist/preview/entry-urls.d.ts +44 -0
- package/dist/preview/entry-urls.d.ts.map +1 -0
- package/dist/preview/entry-urls.js +153 -0
- package/dist/preview/entry-urls.js.map +1 -0
- package/dist/project/doctor.d.ts +9 -0
- package/dist/project/doctor.d.ts.map +1 -0
- package/dist/project/doctor.js +172 -0
- package/dist/project/doctor.js.map +1 -0
- package/dist/project/load.d.ts +5 -0
- package/dist/project/load.d.ts.map +1 -0
- package/dist/project/load.js +66 -0
- package/dist/project/load.js.map +1 -0
- package/dist/project/types.d.ts +54 -0
- package/dist/project/types.d.ts.map +1 -0
- package/dist/project/types.js +53 -0
- package/dist/project/types.js.map +1 -0
- package/dist/project/validate-hosted.d.ts +7 -0
- package/dist/project/validate-hosted.d.ts.map +1 -0
- package/dist/project/validate-hosted.js +12 -0
- package/dist/project/validate-hosted.js.map +1 -0
- package/dist/project/validate-secrets.d.ts +7 -0
- package/dist/project/validate-secrets.d.ts.map +1 -0
- package/dist/project/validate-secrets.js +61 -0
- package/dist/project/validate-secrets.js.map +1 -0
- package/dist/rtf/convertToRtf.d.ts +7 -0
- package/dist/rtf/convertToRtf.d.ts.map +1 -0
- package/dist/rtf/convertToRtf.js +24 -0
- package/dist/rtf/convertToRtf.js.map +1 -0
- package/dist/rtf/fromHtml.d.ts +8 -0
- package/dist/rtf/fromHtml.d.ts.map +1 -0
- package/dist/rtf/fromHtml.js +290 -0
- package/dist/rtf/fromHtml.js.map +1 -0
- package/dist/rtf/fromMarkdown.d.ts +25 -0
- package/dist/rtf/fromMarkdown.d.ts.map +1 -0
- package/dist/rtf/fromMarkdown.js +375 -0
- package/dist/rtf/fromMarkdown.js.map +1 -0
- package/dist/rtf/fromPlainText.d.ts +7 -0
- package/dist/rtf/fromPlainText.d.ts.map +1 -0
- package/dist/rtf/fromPlainText.js +39 -0
- package/dist/rtf/fromPlainText.js.map +1 -0
- package/dist/rtf/fromRtfJson.d.ts +10 -0
- package/dist/rtf/fromRtfJson.d.ts.map +1 -0
- package/dist/rtf/fromRtfJson.js +52 -0
- package/dist/rtf/fromRtfJson.js.map +1 -0
- package/dist/rtf/inlineHtml.d.ts +6 -0
- package/dist/rtf/inlineHtml.d.ts.map +1 -0
- package/dist/rtf/inlineHtml.js +152 -0
- package/dist/rtf/inlineHtml.js.map +1 -0
- package/dist/rtf/references.d.ts +9 -0
- package/dist/rtf/references.d.ts.map +1 -0
- package/dist/rtf/references.js +49 -0
- package/dist/rtf/references.js.map +1 -0
- package/dist/rtf/replacePlainText.d.ts +117 -0
- package/dist/rtf/replacePlainText.d.ts.map +1 -0
- package/dist/rtf/replacePlainText.js +598 -0
- package/dist/rtf/replacePlainText.js.map +1 -0
- package/dist/rtf/resolveRtfInput.d.ts +11 -0
- package/dist/rtf/resolveRtfInput.d.ts.map +1 -0
- package/dist/rtf/resolveRtfInput.js +23 -0
- package/dist/rtf/resolveRtfInput.js.map +1 -0
- package/dist/rtf/toMarkdown.d.ts +6 -0
- package/dist/rtf/toMarkdown.d.ts.map +1 -0
- package/dist/rtf/toMarkdown.js +179 -0
- package/dist/rtf/toMarkdown.js.map +1 -0
- package/dist/rtf/types.d.ts +5 -0
- package/dist/rtf/types.d.ts.map +1 -0
- package/dist/rtf/types.js +2 -0
- package/dist/rtf/types.js.map +1 -0
- package/dist/rtf/utils.d.ts +7 -0
- package/dist/rtf/utils.d.ts.map +1 -0
- package/dist/rtf/utils.js +11 -0
- package/dist/rtf/utils.js.map +1 -0
- package/dist/runtime/context.d.ts +32 -0
- package/dist/runtime/context.d.ts.map +1 -0
- package/dist/runtime/context.js +9 -0
- package/dist/runtime/context.js.map +1 -0
- package/dist/session/dirty.d.ts +20 -0
- package/dist/session/dirty.d.ts.map +1 -0
- package/dist/session/dirty.js +44 -0
- package/dist/session/dirty.js.map +1 -0
- package/dist/session/file-session-store.d.ts +10 -0
- package/dist/session/file-session-store.d.ts.map +1 -0
- package/dist/session/file-session-store.js +169 -0
- package/dist/session/file-session-store.js.map +1 -0
- package/dist/session/log.d.ts +6 -0
- package/dist/session/log.d.ts.map +1 -0
- package/dist/session/log.js +21 -0
- package/dist/session/log.js.map +1 -0
- package/dist/session/redis-session-store.d.ts +40 -0
- package/dist/session/redis-session-store.d.ts.map +1 -0
- package/dist/session/redis-session-store.js +199 -0
- package/dist/session/redis-session-store.js.map +1 -0
- package/dist/session/refs.d.ts +45 -0
- package/dist/session/refs.d.ts.map +1 -0
- package/dist/session/refs.js +152 -0
- package/dist/session/refs.js.map +1 -0
- package/dist/session/session-store.d.ts +27 -0
- package/dist/session/session-store.d.ts.map +1 -0
- package/dist/session/session-store.js +9 -0
- package/dist/session/session-store.js.map +1 -0
- package/dist/session/state.d.ts +106 -0
- package/dist/session/state.d.ts.map +1 -0
- package/dist/session/state.js +93 -0
- package/dist/session/state.js.map +1 -0
- package/dist/session/store.d.ts +16 -0
- package/dist/session/store.d.ts.map +1 -0
- package/dist/session/store.js +89 -0
- package/dist/session/store.js.map +1 -0
- package/dist/snapshot/field-value.d.ts +5 -0
- package/dist/snapshot/field-value.d.ts.map +1 -0
- package/dist/snapshot/field-value.js +42 -0
- package/dist/snapshot/field-value.js.map +1 -0
- package/dist/snapshot/fields.d.ts +10 -0
- package/dist/snapshot/fields.d.ts.map +1 -0
- package/dist/snapshot/fields.js +72 -0
- package/dist/snapshot/fields.js.map +1 -0
- package/dist/snapshot/render.d.ts +21 -0
- package/dist/snapshot/render.d.ts.map +1 -0
- package/dist/snapshot/render.js +231 -0
- package/dist/snapshot/render.js.map +1 -0
- package/dist/staged-upload/hmac.d.ts +6 -0
- package/dist/staged-upload/hmac.d.ts.map +1 -0
- package/dist/staged-upload/hmac.js +43 -0
- package/dist/staged-upload/hmac.js.map +1 -0
- package/dist/staged-upload/limits.d.ts +6 -0
- package/dist/staged-upload/limits.d.ts.map +1 -0
- package/dist/staged-upload/limits.js +9 -0
- package/dist/staged-upload/limits.js.map +1 -0
- package/dist/staged-upload/mime.d.ts +2 -0
- package/dist/staged-upload/mime.d.ts.map +1 -0
- package/dist/staged-upload/mime.js +15 -0
- package/dist/staged-upload/mime.js.map +1 -0
- package/dist/staged-upload/request.d.ts +11 -0
- package/dist/staged-upload/request.d.ts.map +1 -0
- package/dist/staged-upload/request.js +40 -0
- package/dist/staged-upload/request.js.map +1 -0
- package/dist/staged-upload/store.d.ts +19 -0
- package/dist/staged-upload/store.d.ts.map +1 -0
- package/dist/staged-upload/store.js +124 -0
- package/dist/staged-upload/store.js.map +1 -0
- package/dist/staged-upload/types.d.ts +27 -0
- package/dist/staged-upload/types.d.ts.map +1 -0
- package/dist/staged-upload/types.js +2 -0
- package/dist/staged-upload/types.js.map +1 -0
- package/dist/telemetry/axiom.d.ts +22 -0
- package/dist/telemetry/axiom.d.ts.map +1 -0
- package/dist/telemetry/axiom.js +45 -0
- package/dist/telemetry/axiom.js.map +1 -0
- package/dist/telemetry/composite.d.ts +9 -0
- package/dist/telemetry/composite.d.ts.map +1 -0
- package/dist/telemetry/composite.js +16 -0
- package/dist/telemetry/composite.js.map +1 -0
- package/dist/telemetry/enrich.d.ts +11 -0
- package/dist/telemetry/enrich.d.ts.map +1 -0
- package/dist/telemetry/enrich.js +32 -0
- package/dist/telemetry/enrich.js.map +1 -0
- package/dist/telemetry/factory.d.ts +8 -0
- package/dist/telemetry/factory.d.ts.map +1 -0
- package/dist/telemetry/factory.js +44 -0
- package/dist/telemetry/factory.js.map +1 -0
- package/dist/telemetry/index.d.ts +10 -0
- package/dist/telemetry/index.d.ts.map +1 -0
- package/dist/telemetry/index.js +9 -0
- package/dist/telemetry/index.js.map +1 -0
- package/dist/telemetry/local.d.ts +9 -0
- package/dist/telemetry/local.d.ts.map +1 -0
- package/dist/telemetry/local.js +21 -0
- package/dist/telemetry/local.js.map +1 -0
- package/dist/telemetry/noop.d.ts +7 -0
- package/dist/telemetry/noop.d.ts.map +1 -0
- package/dist/telemetry/noop.js +6 -0
- package/dist/telemetry/noop.js.map +1 -0
- package/dist/telemetry/record.d.ts +14 -0
- package/dist/telemetry/record.d.ts.map +1 -0
- package/dist/telemetry/record.js +61 -0
- package/dist/telemetry/record.js.map +1 -0
- package/dist/telemetry/request-stats.d.ts +15 -0
- package/dist/telemetry/request-stats.d.ts.map +1 -0
- package/dist/telemetry/request-stats.js +34 -0
- package/dist/telemetry/request-stats.js.map +1 -0
- package/dist/telemetry/types.d.ts +47 -0
- package/dist/telemetry/types.d.ts.map +1 -0
- package/dist/telemetry/types.js +2 -0
- package/dist/telemetry/types.js.map +1 -0
- package/dist/validation/allowed-types.d.ts +7 -0
- package/dist/validation/allowed-types.d.ts.map +1 -0
- package/dist/validation/allowed-types.js +17 -0
- package/dist/validation/allowed-types.js.map +1 -0
- package/dist/version.d.ts +9 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +10 -0
- package/dist/version.js.map +1 -0
- package/docs/FEATURE_REQUESTS_ARCHIVE.md +141 -0
- package/docs/FUNCTIONAL_SPEC.md +303 -0
- package/docs/MEDIA_INDEX_PLAN.md +256 -0
- package/docs/SKILLS.md +29 -0
- package/docs/TELEMETRY_AXIOM.md +93 -0
- package/docs/editor-tasks/article-tags.md +47 -0
- package/docs/editor-tasks/authors-import.md +53 -0
- package/docs/editor-tasks/bulk-find-replace.md +52 -0
- package/docs/editor-tasks/clone-page.md +39 -0
- package/docs/editor-tasks/create-article.md +77 -0
- package/docs/editor-tasks/create-from-document.md +77 -0
- package/docs/editor-tasks/create-page.md +45 -0
- package/docs/editor-tasks/edit-rich-text.md +44 -0
- package/docs/editor-tasks/edit-scalar-fields.md +47 -0
- package/docs/editor-tasks/featured-images.md +46 -0
- package/docs/editor-tasks/media-pipeline-prepare.md +175 -0
- package/docs/editor-tasks/media-reuse-and-upload.md +122 -0
- package/docs/editor-tasks/media-review.md +139 -0
- package/docs/editor-tasks/navigation.md +39 -0
- package/docs/editor-tasks/preview-verify.md +93 -0
- package/docs/editor-tasks/publish-handoff.md +41 -0
- package/docs/editor-tasks/seo-descriptions.md +48 -0
- package/docs/editor-tasks/source-readiness-review.md +116 -0
- package/docs/editor-tasks/taxonomy.md +51 -0
- package/docs/help/article-tags-from-json.md +62 -0
- package/docs/help/asset-review.md +56 -0
- package/docs/help/batch-run.md +222 -0
- package/docs/help/batch.md +94 -0
- package/docs/help/bulk-rtf-replace.md +80 -0
- package/docs/help/create-from-json.md +382 -0
- package/docs/help/fields-article.md +161 -0
- package/docs/help/fields-collection.md +133 -0
- package/docs/help/fields-component.md +165 -0
- package/docs/help/fields-page.md +123 -0
- package/docs/help/fields-taxonomy.md +158 -0
- package/docs/help/fields.md +60 -0
- package/docs/help/index-sync.md +136 -0
- package/docs/help/index.md +181 -0
- package/docs/help/lookup.md +132 -0
- package/docs/help/person-from-json.md +82 -0
- package/docs/help/taxonomy-from-json.md +115 -0
- package/docs/help/workflow.md +239 -0
- package/docs/mcp/e2e-test-prompt.md +159 -0
- package/docs/mcp/hosted-guide.md +354 -0
- package/package.json +107 -0
- package/skills/README.md +30 -0
- package/skills/core/SKILL.md +860 -0
- package/skills/editor-tasks/SKILL.md +86 -0
- package/skills/manifest.json +6 -0
- package/skills/setup/SKILL.md +102 -0
- package/skills/templates/SKILL.md +21 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { HOSTED_GUIDE_TEMPLATE } from '../generated/hosted-guide.js';
|
|
2
|
+
export const GUIDE_TOPICS = [
|
|
3
|
+
'overview',
|
|
4
|
+
'workflow',
|
|
5
|
+
'commands',
|
|
6
|
+
'troubleshooting',
|
|
7
|
+
'hosted',
|
|
8
|
+
];
|
|
9
|
+
export const GUIDE_RESOURCE_URI = 'cms-edit://guide';
|
|
10
|
+
export const ONBOARDING_PROMPTS = [
|
|
11
|
+
'cms_edit_verify',
|
|
12
|
+
'cms_edit_explore',
|
|
13
|
+
'cms_edit_edit_page',
|
|
14
|
+
'cms_edit_edit_article',
|
|
15
|
+
'cms_edit_index_sync',
|
|
16
|
+
'cms_edit_create_page',
|
|
17
|
+
'cms_edit_create_article',
|
|
18
|
+
'cms_edit_create_from_doc',
|
|
19
|
+
'cms_edit_create_article_from_doc',
|
|
20
|
+
'cms_edit_taxonomy',
|
|
21
|
+
'cms_edit_bulk_seo',
|
|
22
|
+
'cms_edit_bulk_find_replace',
|
|
23
|
+
'cms_edit_bulk_article_tags',
|
|
24
|
+
'cms_edit_import_authors',
|
|
25
|
+
'cms_edit_media',
|
|
26
|
+
];
|
|
27
|
+
export const GETTING_STARTED_INFO = {
|
|
28
|
+
resourceUri: GUIDE_RESOURCE_URI,
|
|
29
|
+
prompts: [...ONBOARDING_PROMPTS],
|
|
30
|
+
helpTool: 'cms_edit_help',
|
|
31
|
+
};
|
|
32
|
+
const DEFAULT_EXAMPLE_SLUGS = ['/', '/pricing'];
|
|
33
|
+
const TOPIC_HEADINGS = {
|
|
34
|
+
workflow: '## Core workflow',
|
|
35
|
+
commands: '## Command reference (cms_edit args)',
|
|
36
|
+
troubleshooting: '## Troubleshooting',
|
|
37
|
+
hosted: '## Hosted connector rules',
|
|
38
|
+
};
|
|
39
|
+
export function loadHostedGuideTemplate() {
|
|
40
|
+
return HOSTED_GUIDE_TEMPLATE;
|
|
41
|
+
}
|
|
42
|
+
function buildSiteIntro(hosted) {
|
|
43
|
+
if (hosted) {
|
|
44
|
+
const siteName = hosted.displayName ?? hosted.projectKey;
|
|
45
|
+
return (`This deployment is configured for **${siteName}** (project key \`${hosted.projectKey}\`). ` +
|
|
46
|
+
'You are using the hosted Claude Integrations connector — no local config files or `--space` flag needed.');
|
|
47
|
+
}
|
|
48
|
+
return ("Connect via your site's hosted `/cms-edit` MCP URL (Claude Integrations + OAuth). " +
|
|
49
|
+
'Local stdio MCP is not supported. For terminal/IDE agents, run `cms-edit` CLI with `.contentful-cms.json`.');
|
|
50
|
+
}
|
|
51
|
+
function buildHostedRules(hosted) {
|
|
52
|
+
if (hosted) {
|
|
53
|
+
return ('- **Do not pass `--space`** — this deployment is already bound to one Contentful space.\n' +
|
|
54
|
+
'- You sign in with Contentful OAuth; edits appear under your name.\n' +
|
|
55
|
+
'- Redeploy the hosted server to pick up cms-edit updates; editors do not reconnect for tool changes.');
|
|
56
|
+
}
|
|
57
|
+
return ("- Connect Claude via your site's `/cms-edit` hosted MCP URL — do not use local `mcpServers` config.\n" +
|
|
58
|
+
'- For CLI/agents in a repo: `.contentful-cms.json` and `--space <name>` when multiple spaces are configured.\n' +
|
|
59
|
+
'- Install skills: `npx skills add @se-studio/skills`.');
|
|
60
|
+
}
|
|
61
|
+
export function buildGuideMarkdown(hosted) {
|
|
62
|
+
const exampleSlug = hosted?.exampleSlugs?.[1] ?? DEFAULT_EXAMPLE_SLUGS[1] ?? '/pricing';
|
|
63
|
+
return loadHostedGuideTemplate()
|
|
64
|
+
.replace('{{SITE_INTRO}}', buildSiteIntro(hosted))
|
|
65
|
+
.replace('{{HOSTED_RULES}}', buildHostedRules(hosted))
|
|
66
|
+
.replaceAll('{{EXAMPLE_SLUG}}', exampleSlug);
|
|
67
|
+
}
|
|
68
|
+
export function extractGuideTopic(markdown, topic) {
|
|
69
|
+
if (topic === 'overview') {
|
|
70
|
+
return markdown.trim();
|
|
71
|
+
}
|
|
72
|
+
const heading = TOPIC_HEADINGS[topic];
|
|
73
|
+
const start = markdown.indexOf(heading);
|
|
74
|
+
if (start === -1) {
|
|
75
|
+
return markdown.trim();
|
|
76
|
+
}
|
|
77
|
+
const afterHeading = markdown.slice(start);
|
|
78
|
+
const nextHeadingIndex = afterHeading.indexOf('\n## ', 1);
|
|
79
|
+
if (nextHeadingIndex === -1) {
|
|
80
|
+
return afterHeading.trim();
|
|
81
|
+
}
|
|
82
|
+
return afterHeading.slice(0, nextHeadingIndex).trim();
|
|
83
|
+
}
|
|
84
|
+
export function getGuideTopicMarkdown(topic, hosted) {
|
|
85
|
+
const markdown = buildGuideMarkdown(hosted);
|
|
86
|
+
return extractGuideTopic(markdown, topic);
|
|
87
|
+
}
|
|
88
|
+
export function parseGuideTopic(value) {
|
|
89
|
+
if (!value || value === 'overview') {
|
|
90
|
+
return 'overview';
|
|
91
|
+
}
|
|
92
|
+
if (GUIDE_TOPICS.includes(value)) {
|
|
93
|
+
return value;
|
|
94
|
+
}
|
|
95
|
+
throw new Error(`Unknown guide topic "${value}". Valid topics: ${GUIDE_TOPICS.join(', ')}`);
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=guide.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guide.js","sourceRoot":"","sources":["../../src/mcp/guide.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAWrE,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,UAAU;IACV,UAAU;IACV,UAAU;IACV,iBAAiB;IACjB,QAAQ;CACT,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,kBAAkB,CAAC;AAErD,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,iBAAiB;IACjB,kBAAkB;IAClB,oBAAoB;IACpB,uBAAuB;IACvB,qBAAqB;IACrB,sBAAsB;IACtB,yBAAyB;IACzB,0BAA0B;IAC1B,kCAAkC;IAClC,mBAAmB;IACnB,mBAAmB;IACnB,4BAA4B;IAC5B,4BAA4B;IAC5B,yBAAyB;IACzB,gBAAgB;CACR,CAAC;AAEX,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,WAAW,EAAE,kBAAkB;IAC/B,OAAO,EAAE,CAAC,GAAG,kBAAkB,CAAC;IAChC,QAAQ,EAAE,eAAe;CACjB,CAAC;AAEX,MAAM,qBAAqB,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;AAEhD,MAAM,cAAc,GAAoD;IACtE,QAAQ,EAAE,kBAAkB;IAC5B,QAAQ,EAAE,sCAAsC;IAChD,eAAe,EAAE,oBAAoB;IACrC,MAAM,EAAE,2BAA2B;CACpC,CAAC;AAEF,MAAM,UAAU,uBAAuB;IACrC,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,SAAS,cAAc,CAAC,MAAsB;IAC5C,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,CAAC;QACzD,OAAO,CACL,uCAAuC,QAAQ,qBAAqB,MAAM,CAAC,UAAU,OAAO;YAC5F,0GAA0G,CAC3G,CAAC;IACJ,CAAC;IACD,OAAO,CACL,oFAAoF;QACpF,4GAA4G,CAC7G,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAsB;IAC9C,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CACL,2FAA2F;YAC3F,sEAAsE;YACtE,sGAAsG,CACvG,CAAC;IACJ,CAAC;IACD,OAAO,CACL,uGAAuG;QACvG,gHAAgH;QAChH,uDAAuD,CACxD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAsB;IACvD,MAAM,WAAW,GAAG,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,qBAAqB,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC;IACxF,OAAO,uBAAuB,EAAE;SAC7B,OAAO,CAAC,gBAAgB,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;SACjD,OAAO,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;SACrD,UAAU,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,QAAgB,EAAE,KAAiB;IACnE,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;QACzB,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAED,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QACjB,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAED,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC1D,IAAI,gBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC;QAC5B,OAAO,YAAY,CAAC,IAAI,EAAE,CAAC;IAC7B,CAAC;IACD,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,IAAI,EAAE,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAiB,EAAE,MAAsB;IAC7E,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC5C,OAAO,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,IAAI,CAAC,KAAK,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;QACnC,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,IAAK,YAAkC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,OAAO,KAAmB,CAAC;IAC7B,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,wBAAwB,KAAK,oBAAoB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC9F,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { HostedMcpInfo } from './guide.js';
|
|
2
|
+
export declare function getHostedSiteLabel(hosted: HostedMcpInfo): string;
|
|
3
|
+
/** MCP server name exposed to clients (e.g. Cowork tool groups). */
|
|
4
|
+
export declare function getHostedMcpServerName(hosted?: HostedMcpInfo): string;
|
|
5
|
+
/** Prefix tool/prompt descriptions so multi-connector clients can route by site name. */
|
|
6
|
+
export declare function prefixHostedToolDescription(description: string, hosted?: HostedMcpInfo): string;
|
|
7
|
+
export declare function buildHostedVersionPayload(versionInfo: {
|
|
8
|
+
name: string;
|
|
9
|
+
version: string;
|
|
10
|
+
package: string;
|
|
11
|
+
}, hosted?: HostedMcpInfo): Record<string, string | boolean>;
|
|
12
|
+
//# sourceMappingURL=hosted-metadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hosted-metadata.d.ts","sourceRoot":"","sources":["../../src/mcp/hosted-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAEhE;AAED,oEAAoE;AACpE,wBAAgB,sBAAsB,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,MAAM,CAKrE;AAED,yFAAyF;AACzF,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,MAAM,CAK/F;AAED,wBAAgB,yBAAyB,CACvC,WAAW,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAC/D,MAAM,CAAC,EAAE,aAAa,GACrB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAWlC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export function getHostedSiteLabel(hosted) {
|
|
2
|
+
return hosted.displayName ?? hosted.projectKey;
|
|
3
|
+
}
|
|
4
|
+
/** MCP server name exposed to clients (e.g. Cowork tool groups). */
|
|
5
|
+
export function getHostedMcpServerName(hosted) {
|
|
6
|
+
if (!hosted?.projectKey) {
|
|
7
|
+
return 'cms-edit';
|
|
8
|
+
}
|
|
9
|
+
return `cms-edit-${hosted.projectKey}`;
|
|
10
|
+
}
|
|
11
|
+
/** Prefix tool/prompt descriptions so multi-connector clients can route by site name. */
|
|
12
|
+
export function prefixHostedToolDescription(description, hosted) {
|
|
13
|
+
if (!hosted?.projectKey) {
|
|
14
|
+
return description;
|
|
15
|
+
}
|
|
16
|
+
return `[${getHostedSiteLabel(hosted)} cms-edit] ${description}`;
|
|
17
|
+
}
|
|
18
|
+
export function buildHostedVersionPayload(versionInfo, hosted) {
|
|
19
|
+
const payload = { ok: true, ...versionInfo };
|
|
20
|
+
if (!hosted?.projectKey) {
|
|
21
|
+
return payload;
|
|
22
|
+
}
|
|
23
|
+
payload['projectKey'] = hosted.projectKey;
|
|
24
|
+
payload['displayName'] = getHostedSiteLabel(hosted);
|
|
25
|
+
if (hosted.spaceId) {
|
|
26
|
+
payload['spaceId'] = hosted.spaceId;
|
|
27
|
+
}
|
|
28
|
+
return payload;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=hosted-metadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hosted-metadata.js","sourceRoot":"","sources":["../../src/mcp/hosted-metadata.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,kBAAkB,CAAC,MAAqB;IACtD,OAAO,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,CAAC;AACjD,CAAC;AAED,oEAAoE;AACpE,MAAM,UAAU,sBAAsB,CAAC,MAAsB;IAC3D,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC;QACxB,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,OAAO,YAAY,MAAM,CAAC,UAAU,EAAE,CAAC;AACzC,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,2BAA2B,CAAC,WAAmB,EAAE,MAAsB;IACrF,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC;QACxB,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,OAAO,IAAI,kBAAkB,CAAC,MAAM,CAAC,cAAc,WAAW,EAAE,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,WAA+D,EAC/D,MAAsB;IAEtB,MAAM,OAAO,GAAqC,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,WAAW,EAAE,CAAC;IAC/E,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC;QACxB,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC;IAC1C,OAAO,CAAC,aAAa,CAAC,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACpD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC;IACtC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { CmsEditRuntimeContext } from '../runtime/context.js';
|
|
2
|
+
import type { HostedMcpInfo } from './guide.js';
|
|
3
|
+
export interface HostedMcpHandlerOptions {
|
|
4
|
+
/** Builds runtime context (config, user, session store) from the incoming request. */
|
|
5
|
+
resolveContext: (request: Request) => Promise<CmsEditRuntimeContext>;
|
|
6
|
+
/** Optional deployment info for guide/prompt interpolation. */
|
|
7
|
+
getMcpInfo?: () => HostedMcpInfo | undefined;
|
|
8
|
+
/** Path to generated editor-pack/ for cms-edit://customer/* resources. */
|
|
9
|
+
editorPackPath?: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Handles a Streamable HTTP MCP request in stateless mode (suitable for Vercel serverless).
|
|
13
|
+
*/
|
|
14
|
+
export declare function handleHostedMcpRequest(request: Request, options: HostedMcpHandlerOptions): Promise<Response>;
|
|
15
|
+
//# sourceMappingURL=http-handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-handler.d.ts","sourceRoot":"","sources":["../../src/mcp/http-handler.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAGnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAGhD,MAAM,WAAW,uBAAuB;IACtC,sFAAsF;IACtF,cAAc,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACrE,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,aAAa,GAAG,SAAS,CAAC;IAC7C,0EAA0E;IAC1E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAOD;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,QAAQ,CAAC,CA2BnB"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { WebStandardStreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/webStandardStreamableHttp.js';
|
|
2
|
+
import { runCmsEditArgs } from '../cli/runner.js';
|
|
3
|
+
import { runWithCmsEditContext } from '../runtime/context.js';
|
|
4
|
+
import { sessionLogVerbose } from '../session/log.js';
|
|
5
|
+
import { createMcpServer } from './server.js';
|
|
6
|
+
async function defaultRunCmsEdit(args) {
|
|
7
|
+
const { exitCode, output } = await runCmsEditArgs(args);
|
|
8
|
+
return exitCode !== 0 ? `${output}\n(exit code ${exitCode})` : output;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Handles a Streamable HTTP MCP request in stateless mode (suitable for Vercel serverless).
|
|
12
|
+
*/
|
|
13
|
+
export async function handleHostedMcpRequest(request, options) {
|
|
14
|
+
const context = await options.resolveContext(request);
|
|
15
|
+
return runWithCmsEditContext(context, async () => {
|
|
16
|
+
const runCmsEdit = async (args) => {
|
|
17
|
+
sessionLogVerbose('hosted mcp cms_edit', {
|
|
18
|
+
args,
|
|
19
|
+
userId: context.user?.userId,
|
|
20
|
+
store: context.sessionStore?.constructor.name ?? 'FileSessionStore',
|
|
21
|
+
});
|
|
22
|
+
process.env['CMS_EDIT_JSON'] = '1';
|
|
23
|
+
return defaultRunCmsEdit(args);
|
|
24
|
+
};
|
|
25
|
+
const server = createMcpServer({
|
|
26
|
+
runCmsEdit,
|
|
27
|
+
hosted: options.getMcpInfo?.(),
|
|
28
|
+
editorPackPath: options.editorPackPath,
|
|
29
|
+
});
|
|
30
|
+
const transport = new WebStandardStreamableHTTPServerTransport({
|
|
31
|
+
sessionIdGenerator: undefined,
|
|
32
|
+
enableJsonResponse: true,
|
|
33
|
+
});
|
|
34
|
+
await server.connect(transport);
|
|
35
|
+
return transport.handleRequest(request);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=http-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-handler.js","sourceRoot":"","sources":["../../src/mcp/http-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wCAAwC,EAAE,MAAM,+DAA+D,CAAC;AACzH,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAW9C,KAAK,UAAU,iBAAiB,CAAC,IAAc;IAC7C,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;IACxD,OAAO,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,gBAAgB,QAAQ,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;AACxE,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,OAAgB,EAChB,OAAgC;IAEhC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAEtD,OAAO,qBAAqB,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;QAC/C,MAAM,UAAU,GAAG,KAAK,EAAE,IAAc,EAAE,EAAE;YAC1C,iBAAiB,CAAC,qBAAqB,EAAE;gBACvC,IAAI;gBACJ,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM;gBAC5B,KAAK,EAAE,OAAO,CAAC,YAAY,EAAE,WAAW,CAAC,IAAI,IAAI,kBAAkB;aACpE,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,GAAG,CAAC;YACnC,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,eAAe,CAAC;YAC7B,UAAU;YACV,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE,EAAE;YAC9B,cAAc,EAAE,OAAO,CAAC,cAAc;SACvC,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,wCAAwC,CAAC;YAC7D,kBAAkB,EAAE,SAAS;YAC7B,kBAAkB,EAAE,IAAI;SACzB,CAAC,CAAC;QAEH,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChC,OAAO,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"onboarding.d.ts","sourceRoot":"","sources":["../../../src/mcp/prompts/onboarding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAwBjD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,IAAI,CA+ezF"}
|
|
@@ -0,0 +1,398 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { prefixHostedToolDescription } from '../hosted-metadata.js';
|
|
3
|
+
const TASKS_PREAMBLE = 'Start by reading customer playbooks: cms_edit ["customer", "tasks-index"]; ' +
|
|
4
|
+
'cms_edit ["customer", "capabilities"]; cms_edit ["customer", "checklist"].\n\n';
|
|
5
|
+
const PREVIEW_AFTER_SAVE = 'After save: cms_edit ["preview", "urls", "<slug>"] (or use session entry id). ' +
|
|
6
|
+
'Give the user **both** links: (1) **Live preview (publish here)** — Contentful in-app preview with the green Publish button; ' +
|
|
7
|
+
'(2) **Preview (staging site)** — full-page staging URL (with bypass params when configured). ' +
|
|
8
|
+
'Also offer **production** (published only). See task-preview-verify and task-publish-handoff.\n';
|
|
9
|
+
function hostedNote(hosted) {
|
|
10
|
+
if (!hosted) {
|
|
11
|
+
return 'Local MCP: use --space when multiple spaces are configured.';
|
|
12
|
+
}
|
|
13
|
+
const siteName = hosted.displayName ?? hosted.projectKey;
|
|
14
|
+
return (`Hosted deployment for ${siteName}. Do NOT pass --space in cms_edit args — ` +
|
|
15
|
+
'this connector is already bound to one Contentful space.');
|
|
16
|
+
}
|
|
17
|
+
export function registerOnboardingPrompts(server, hosted) {
|
|
18
|
+
const note = hostedNote(hosted);
|
|
19
|
+
const desc = (text) => prefixHostedToolDescription(text, hosted);
|
|
20
|
+
server.prompt('cms_edit_verify', desc('Verify cms-edit connectivity: check version and run health checks.'), async () => ({
|
|
21
|
+
messages: [
|
|
22
|
+
{
|
|
23
|
+
role: 'user',
|
|
24
|
+
content: {
|
|
25
|
+
type: 'text',
|
|
26
|
+
text: `${note}\n\n` +
|
|
27
|
+
'Verify cms-edit is working:\n' +
|
|
28
|
+
'1. Call cms_edit_version\n' +
|
|
29
|
+
'2. Call cms_edit with args ["health"]\n' +
|
|
30
|
+
'3. cms_edit ["customer", "tasks-index"] and ["customer", "capabilities"] — confirm onboarding resources load\n' +
|
|
31
|
+
'4. Summarize version, health, and available task count for the user',
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
],
|
|
35
|
+
}));
|
|
36
|
+
server.prompt('cms_edit_explore', desc('Explore site content: list pages, open a page, and show the content tree.'), {
|
|
37
|
+
slug: z
|
|
38
|
+
.string()
|
|
39
|
+
.optional()
|
|
40
|
+
.describe('Page slug to open (default: / for homepage — CMS slug index on SE Studio sites; /index is equivalent)'),
|
|
41
|
+
}, async ({ slug }) => {
|
|
42
|
+
const targetSlug = slug ?? '/';
|
|
43
|
+
return {
|
|
44
|
+
messages: [
|
|
45
|
+
{
|
|
46
|
+
role: 'user',
|
|
47
|
+
content: {
|
|
48
|
+
type: 'text',
|
|
49
|
+
text: `${note}\n\n` +
|
|
50
|
+
'Homepage note: SE Studio sites store the homepage as CMS slug `index`. ' +
|
|
51
|
+
'`--page-slug /` and `--page-slug /index` are equivalent.\n\n' +
|
|
52
|
+
'Explore this Contentful site:\n' +
|
|
53
|
+
'1. cms_edit ["list", "--type", "page"] — list pages\n' +
|
|
54
|
+
`2. cms_edit ["open", "--page-slug", "${targetSlug}"] — load the page\n` +
|
|
55
|
+
'3. cms_edit ["snapshot"] — show @ref tree\n' +
|
|
56
|
+
'4. Summarize what you found',
|
|
57
|
+
},
|
|
58
|
+
},
|
|
59
|
+
],
|
|
60
|
+
};
|
|
61
|
+
});
|
|
62
|
+
server.prompt('cms_edit_edit_page', desc('Edit a page: open, inspect, change fields, diff, then save as draft.'), {
|
|
63
|
+
slug: z.string().describe('Page slug to edit, e.g. /pricing'),
|
|
64
|
+
instructions: z.string().optional().describe('Optional edit instructions from the user'),
|
|
65
|
+
}, async ({ slug, instructions }) => {
|
|
66
|
+
const editLine = instructions
|
|
67
|
+
? `User wants: ${instructions}\n`
|
|
68
|
+
: 'Ask the user what to change if not specified.\n';
|
|
69
|
+
return {
|
|
70
|
+
messages: [
|
|
71
|
+
{
|
|
72
|
+
role: 'user',
|
|
73
|
+
content: {
|
|
74
|
+
type: 'text',
|
|
75
|
+
text: `${note}\n\n` +
|
|
76
|
+
`${editLine}` +
|
|
77
|
+
`Edit page "${slug}":\n` +
|
|
78
|
+
`1. cms_edit ["open", "--page-slug", "${slug}"]\n` +
|
|
79
|
+
'2. cms_edit ["snapshot"] — find @refs\n' +
|
|
80
|
+
'3. cms_edit ["read", "@cN", "field"] — inspect fields\n' +
|
|
81
|
+
'4. cms_edit ["set", ...] or ["rtf", ..., "--content", "..."] — make changes\n' +
|
|
82
|
+
'5. cms_edit ["diff"] — review ALL changes\n' +
|
|
83
|
+
'6. cms_edit ["save"] — write drafts (does NOT publish)\n' +
|
|
84
|
+
'Always show diff before saving.',
|
|
85
|
+
},
|
|
86
|
+
},
|
|
87
|
+
],
|
|
88
|
+
};
|
|
89
|
+
});
|
|
90
|
+
server.prompt('cms_edit_index_sync', desc('Build or refresh the local content index (assets, media, templates, taxonomy).'), async () => ({
|
|
91
|
+
messages: [
|
|
92
|
+
{
|
|
93
|
+
role: 'user',
|
|
94
|
+
content: {
|
|
95
|
+
type: 'text',
|
|
96
|
+
text: `${note}\n\n` +
|
|
97
|
+
'Sync the local cms-edit index:\n' +
|
|
98
|
+
'1. cms_edit ["index", "sync"] — rebuild assets, media, templates, articleType, tagType, tag\n' +
|
|
99
|
+
'2. cms_edit ["index", "status"] — show counts and freshness\n' +
|
|
100
|
+
'3. Explain what was indexed and when to re-run sync (imports, stale >24h)',
|
|
101
|
+
},
|
|
102
|
+
},
|
|
103
|
+
],
|
|
104
|
+
}));
|
|
105
|
+
server.prompt('cms_edit_edit_article', desc('Edit an article: open, inspect, change fields, diff, then save as draft.'), {
|
|
106
|
+
slug: z.string().describe('Article slug to edit, e.g. /resources/blog/my-post'),
|
|
107
|
+
instructions: z.string().optional().describe('Optional edit instructions from the user'),
|
|
108
|
+
}, async ({ slug, instructions }) => {
|
|
109
|
+
const editLine = instructions
|
|
110
|
+
? `User wants: ${instructions}\n`
|
|
111
|
+
: 'Ask the user what to change if not specified.\n';
|
|
112
|
+
return {
|
|
113
|
+
messages: [
|
|
114
|
+
{
|
|
115
|
+
role: 'user',
|
|
116
|
+
content: {
|
|
117
|
+
type: 'text',
|
|
118
|
+
text: `${note}\n\n` +
|
|
119
|
+
`${editLine}` +
|
|
120
|
+
`Edit article "${slug}":\n` +
|
|
121
|
+
'1. cms_edit ["customer", "index"]; then routing, defaults, articles playbooks as needed\n' +
|
|
122
|
+
`2. cms_edit ["open", "--article-slug", "${slug}"]\n` +
|
|
123
|
+
'3. cms_edit ["snapshot"] — find @refs\n' +
|
|
124
|
+
'4. cms_edit ["read", "@cN", "field"] — inspect fields\n' +
|
|
125
|
+
'5. cms_edit ["set", ...] or ["rtf", ..., "--content", "..."] — make changes\n' +
|
|
126
|
+
'6. cms_edit ["diff"] — review ALL changes\n' +
|
|
127
|
+
'7. cms_edit ["save"] — write drafts (does NOT publish)\n' +
|
|
128
|
+
'Always show diff before saving. Remind user to publish in Contentful when ready.',
|
|
129
|
+
},
|
|
130
|
+
},
|
|
131
|
+
],
|
|
132
|
+
};
|
|
133
|
+
});
|
|
134
|
+
server.prompt('cms_edit_create_page', desc('Create a new page: list templates, create page, open and edit.'), {
|
|
135
|
+
slug: z.string().describe('Page slug, e.g. /about-us'),
|
|
136
|
+
title: z.string().describe('Page title'),
|
|
137
|
+
}, async ({ slug, title }) => ({
|
|
138
|
+
messages: [
|
|
139
|
+
{
|
|
140
|
+
role: 'user',
|
|
141
|
+
content: {
|
|
142
|
+
type: 'text',
|
|
143
|
+
text: `${note}\n\n` +
|
|
144
|
+
`Create page "${title}" at slug "${slug}":\n` +
|
|
145
|
+
'1. cms_edit ["index", "sync"] if index may be stale (optional but helps template lookup)\n' +
|
|
146
|
+
'2. cms_edit ["list", "--type", "template"] — pick a template ID\n' +
|
|
147
|
+
`3. cms_edit ["create", "page", "--slug", "${slug}", "--title", "${title}", "--template-id", "<id>"]\n` +
|
|
148
|
+
'4. cms_edit ["snapshot"] — review structure\n' +
|
|
149
|
+
'5. Edit fields with set/rtf as needed, then diff and save\n' +
|
|
150
|
+
`6. ${PREVIEW_AFTER_SAVE}`,
|
|
151
|
+
},
|
|
152
|
+
},
|
|
153
|
+
],
|
|
154
|
+
}));
|
|
155
|
+
server.prompt('cms_edit_create_article', desc('Create a new article: pick article type, apply featured image rules, dry-run, then save as draft.'), {
|
|
156
|
+
title: z.string().describe('Article title'),
|
|
157
|
+
slug: z.string().describe('Article slug, e.g. /resources/blog/my-post'),
|
|
158
|
+
articleType: z
|
|
159
|
+
.string()
|
|
160
|
+
.describe('Article type name or slug (required — every article needs an articleType)'),
|
|
161
|
+
instructions: z.string().optional().describe('Optional content instructions from the user'),
|
|
162
|
+
}, async ({ title, slug, articleType, instructions }) => {
|
|
163
|
+
const extra = instructions ? `User content notes: ${instructions}\n` : '';
|
|
164
|
+
return {
|
|
165
|
+
messages: [
|
|
166
|
+
{
|
|
167
|
+
role: 'user',
|
|
168
|
+
content: {
|
|
169
|
+
type: 'text',
|
|
170
|
+
text: `${note}\n\n` +
|
|
171
|
+
`Create article "${title}" at slug "${slug}" (article type: ${articleType}).\n` +
|
|
172
|
+
`${extra}\n` +
|
|
173
|
+
'1. cms_edit ["customer", "index"]; then overview, routing, defaults, articles, components-index\n' +
|
|
174
|
+
'2. cms_edit ["index", "sync"] if catalog may be stale\n' +
|
|
175
|
+
'3. cms_edit ["list", "--type", "articleType"] — confirm article type slug/name\n' +
|
|
176
|
+
'4. Ask if the user has a custom featured image; if not, apply defaults.md rules (articleType → site default)\n' +
|
|
177
|
+
'5. Build create-from-json payload (type article, articleTypeSlug or articleTypeId, components from articles playbook)\n' +
|
|
178
|
+
'6. cms_edit ["create", "from-json", "--json", "<compact-json>", "--dry-run", "--strict"] (or --json-base64 for large payloads)\n' +
|
|
179
|
+
'7. On approval, create and save draft\n' +
|
|
180
|
+
`8. ${PREVIEW_AFTER_SAVE}` +
|
|
181
|
+
'9. Remind user: publish in Contentful UI when ready (cms-edit never publishes)',
|
|
182
|
+
},
|
|
183
|
+
},
|
|
184
|
+
],
|
|
185
|
+
};
|
|
186
|
+
});
|
|
187
|
+
server.prompt('cms_edit_taxonomy', desc('Set up taxonomy: import tag types, article types, and tags idempotently.'), {
|
|
188
|
+
taxonomyJson: z
|
|
189
|
+
.string()
|
|
190
|
+
.optional()
|
|
191
|
+
.describe('Inline taxonomy batch JSON (if omitted, ask user or use create --if-not-exists)'),
|
|
192
|
+
}, async ({ taxonomyJson }) => {
|
|
193
|
+
const importStep = taxonomyJson
|
|
194
|
+
? `2. cms_edit ["create", "taxonomy-from-json", "--json", ${JSON.stringify(taxonomyJson)}, "--if-not-exists"]\n`
|
|
195
|
+
: '2. Use cms_edit ["create", "tag-type", ..., "--if-not-exists"] — or taxonomy-from-json with --json\n';
|
|
196
|
+
return {
|
|
197
|
+
messages: [
|
|
198
|
+
{
|
|
199
|
+
role: 'user',
|
|
200
|
+
content: {
|
|
201
|
+
type: 'text',
|
|
202
|
+
text: `${note}\n\n` +
|
|
203
|
+
'Set up taxonomy entries:\n' +
|
|
204
|
+
'1. cms_edit ["index", "sync"] — refresh tagType/articleType/tag catalog\n' +
|
|
205
|
+
importStep +
|
|
206
|
+
'3. cms_edit ["list", "--type", "tagType"] and ["list", "--type", "tag"] to verify\n' +
|
|
207
|
+
'4. Summarize created vs existing IDs',
|
|
208
|
+
},
|
|
209
|
+
},
|
|
210
|
+
],
|
|
211
|
+
};
|
|
212
|
+
});
|
|
213
|
+
server.prompt('cms_edit_create_from_doc', desc('Create a new page from a freeform document (e.g. Google Doc): infer structure, confirm, dry-run, create.'), {
|
|
214
|
+
slug: z.string().describe('Page slug, e.g. /solutions/hepatology'),
|
|
215
|
+
title: z.string().optional().describe('Page title if known'),
|
|
216
|
+
docSummary: z
|
|
217
|
+
.string()
|
|
218
|
+
.optional()
|
|
219
|
+
.describe('Document content or summary from Google Drive MCP'),
|
|
220
|
+
}, async ({ slug, title, docSummary }) => {
|
|
221
|
+
const docLine = docSummary
|
|
222
|
+
? `Document content:\n${docSummary}\n`
|
|
223
|
+
: 'Fetch the document via Google Drive MCP if the user provided a link.\n';
|
|
224
|
+
const titleLine = title ? `Title: ${title}\n` : '';
|
|
225
|
+
return {
|
|
226
|
+
messages: [
|
|
227
|
+
{
|
|
228
|
+
role: 'user',
|
|
229
|
+
content: {
|
|
230
|
+
type: 'text',
|
|
231
|
+
text: `${note}\n\n` +
|
|
232
|
+
`Create page at slug "${slug}" from a freeform document.\n` +
|
|
233
|
+
`${titleLine}${docLine}\n` +
|
|
234
|
+
`${TASKS_PREAMBLE}` +
|
|
235
|
+
'1. cms_edit ["customer", "task-create-from-document"]; overview, routing, pages (if present), components-index\n' +
|
|
236
|
+
'2. Infer page structure: map sections to component types using components-index\n' +
|
|
237
|
+
'3. Propose a plain-English page plan (slug, title, template, components) — ask user to confirm\n' +
|
|
238
|
+
'4. Build create-from-json payload; run cms_edit ["create", "from-json", "--json", "<compact-json>", "--dry-run", "--strict"]\n' +
|
|
239
|
+
'5. On approval, create and save draft\n' +
|
|
240
|
+
`6. ${PREVIEW_AFTER_SAVE}` +
|
|
241
|
+
'7. Remind user to publish in Contentful UI when satisfied',
|
|
242
|
+
},
|
|
243
|
+
},
|
|
244
|
+
],
|
|
245
|
+
};
|
|
246
|
+
});
|
|
247
|
+
server.prompt('cms_edit_create_article_from_doc', desc('Create a new article from a freeform document: infer structure, confirm article type, dry-run, create.'), {
|
|
248
|
+
slug: z.string().describe('Article slug, e.g. /resources/publications/my-study'),
|
|
249
|
+
articleType: z.string().describe('Article type name or slug (required)'),
|
|
250
|
+
title: z.string().optional().describe('Article title if known'),
|
|
251
|
+
docSummary: z
|
|
252
|
+
.string()
|
|
253
|
+
.optional()
|
|
254
|
+
.describe('Document content or summary from Google Drive MCP'),
|
|
255
|
+
}, async ({ slug, articleType, title, docSummary }) => {
|
|
256
|
+
const docLine = docSummary
|
|
257
|
+
? `Document content:\n${docSummary}\n`
|
|
258
|
+
: 'Fetch the document via Google Drive MCP if the user provided a link.\n';
|
|
259
|
+
const titleLine = title ? `Title: ${title}\n` : '';
|
|
260
|
+
return {
|
|
261
|
+
messages: [
|
|
262
|
+
{
|
|
263
|
+
role: 'user',
|
|
264
|
+
content: {
|
|
265
|
+
type: 'text',
|
|
266
|
+
text: `${note}\n\n` +
|
|
267
|
+
`Create article at slug "${slug}" (article type: ${articleType}) from a freeform document.\n` +
|
|
268
|
+
`${titleLine}${docLine}\n` +
|
|
269
|
+
'1. cms_edit ["customer", "index"]; then overview, routing, defaults, articles, components-index\n' +
|
|
270
|
+
'2. cms_edit ["index", "sync"] — refresh articleType catalog\n' +
|
|
271
|
+
'3. cms_edit ["list", "--type", "articleType"] — resolve article type\n' +
|
|
272
|
+
'4. Infer article structure from document; map body to article components (see articles playbook)\n' +
|
|
273
|
+
'5. Ask about custom featured image; otherwise apply defaults.md inheritance rules\n' +
|
|
274
|
+
'6. Propose plain-English plan — ask user to confirm\n' +
|
|
275
|
+
'7. Build article create-from-json; run --dry-run --strict\n' +
|
|
276
|
+
'8. On approval, create and save draft\n' +
|
|
277
|
+
`9. ${PREVIEW_AFTER_SAVE}` +
|
|
278
|
+
'10. Remind user to publish in Contentful UI when satisfied',
|
|
279
|
+
},
|
|
280
|
+
},
|
|
281
|
+
],
|
|
282
|
+
};
|
|
283
|
+
});
|
|
284
|
+
server.prompt('cms_edit_bulk_seo', desc('Update SEO meta descriptions: read task playbook, inventory pages, update description field.'), {
|
|
285
|
+
instructions: z
|
|
286
|
+
.string()
|
|
287
|
+
.optional()
|
|
288
|
+
.describe('Optional scope, e.g. all pages or specific slugs'),
|
|
289
|
+
}, async ({ instructions }) => {
|
|
290
|
+
const scope = instructions ? `Scope: ${instructions}\n` : '';
|
|
291
|
+
return {
|
|
292
|
+
messages: [
|
|
293
|
+
{
|
|
294
|
+
role: 'user',
|
|
295
|
+
content: {
|
|
296
|
+
type: 'text',
|
|
297
|
+
text: `${note}\n\n${TASKS_PREAMBLE}${scope}` +
|
|
298
|
+
'Update SEO meta descriptions:\n' +
|
|
299
|
+
'1. cms_edit ["customer", "task-seo-descriptions"]\n' +
|
|
300
|
+
'2. cms_edit ["list", "--type", "page"] or list target slugs from user\n' +
|
|
301
|
+
'3. Per page/article: open → set @p0 description "…" → diff → save\n' +
|
|
302
|
+
'4. Or batch set when entry IDs are known\n' +
|
|
303
|
+
'Field name is **description** (not seoDescription). Show diff before every save.',
|
|
304
|
+
},
|
|
305
|
+
},
|
|
306
|
+
],
|
|
307
|
+
};
|
|
308
|
+
});
|
|
309
|
+
server.prompt('cms_edit_bulk_find_replace', desc('Bulk find-replace in rich text across pages or articles.'), {
|
|
310
|
+
find: z.string().describe('Text to find'),
|
|
311
|
+
replace: z.string().describe('Replacement text'),
|
|
312
|
+
instructions: z.string().optional().describe('Optional scope or entry list'),
|
|
313
|
+
}, async ({ find, replace, instructions }) => {
|
|
314
|
+
const scope = instructions ? `Scope: ${instructions}\n` : '';
|
|
315
|
+
return {
|
|
316
|
+
messages: [
|
|
317
|
+
{
|
|
318
|
+
role: 'user',
|
|
319
|
+
content: {
|
|
320
|
+
type: 'text',
|
|
321
|
+
text: `${note}\n\n${TASKS_PREAMBLE}${scope}` +
|
|
322
|
+
`Bulk find-replace: "${find}" → "${replace}"\n` +
|
|
323
|
+
'1. cms_edit ["customer", "task-bulk-find-replace"]\n' +
|
|
324
|
+
'2. cms_edit ["search", "<find>"] or list --type page|article — propose affected count; wait for user approval\n' +
|
|
325
|
+
'3. cms_edit ["bulk-rtf-replace", "--find", "…", "--replace-plain", "…", "--dry-run"] — confirm match count\n' +
|
|
326
|
+
'4. cms_edit ["bulk-rtf-replace", "--find", "…", "--replace-plain", "…"] — or per-entry open/rtf/diff/save for small sets\n' +
|
|
327
|
+
'5. Summarize entries updated',
|
|
328
|
+
},
|
|
329
|
+
},
|
|
330
|
+
],
|
|
331
|
+
};
|
|
332
|
+
});
|
|
333
|
+
server.prompt('cms_edit_bulk_article_tags', desc('Update tags on one or more articles.'), {
|
|
334
|
+
instructions: z
|
|
335
|
+
.string()
|
|
336
|
+
.describe('Article slugs and tag slugs to apply, or description of changes'),
|
|
337
|
+
}, async ({ instructions }) => ({
|
|
338
|
+
messages: [
|
|
339
|
+
{
|
|
340
|
+
role: 'user',
|
|
341
|
+
content: {
|
|
342
|
+
type: 'text',
|
|
343
|
+
text: `${note}\n\n${TASKS_PREAMBLE}User request: ${instructions}\n` +
|
|
344
|
+
'Update article tags:\n' +
|
|
345
|
+
'1. cms_edit ["customer", "task-article-tags"]\n' +
|
|
346
|
+
'2. cms_edit ["index", "sync"] — refresh tag catalog\n' +
|
|
347
|
+
'3. Batch: cms_edit ["article-tags-from-json", "--json", "<tags-json>", "--dry-run"] → user confirms → apply\n' +
|
|
348
|
+
'4. Or per article: open --article-slug → set @p0 tags id1,id2 --links (or --append) → diff → save\n' +
|
|
349
|
+
'5. Confirm tag list with user before saving',
|
|
350
|
+
},
|
|
351
|
+
},
|
|
352
|
+
],
|
|
353
|
+
}));
|
|
354
|
+
server.prompt('cms_edit_import_authors', desc('Create person/author entries from a list or spreadsheet.'), {
|
|
355
|
+
instructions: z
|
|
356
|
+
.string()
|
|
357
|
+
.describe('Author rows (name, slug, jobTitle, bio) or sheet description'),
|
|
358
|
+
}, async ({ instructions }) => ({
|
|
359
|
+
messages: [
|
|
360
|
+
{
|
|
361
|
+
role: 'user',
|
|
362
|
+
content: {
|
|
363
|
+
type: 'text',
|
|
364
|
+
text: `${note}\n\n${TASKS_PREAMBLE}Author data:\n${instructions}\n` +
|
|
365
|
+
'Create authors (person entries):\n' +
|
|
366
|
+
'1. cms_edit ["customer", "task-authors-import"]\n' +
|
|
367
|
+
'2. cms_edit ["customer", "routing"] — people URL base if configured\n' +
|
|
368
|
+
'3. Batch: cms_edit ["create", "person-from-json", "--json", "<authors-json>", "--dry-run"] → user confirms → --if-not-exists\n' +
|
|
369
|
+
'4. Or single: create person --slug … --name … --job-title … --bio-markdown …\n' +
|
|
370
|
+
'5. Link to articles with set @p0 authors <ids> --links if requested',
|
|
371
|
+
},
|
|
372
|
+
},
|
|
373
|
+
],
|
|
374
|
+
}));
|
|
375
|
+
server.prompt('cms_edit_media', desc('Prepare Drive packs via media pipeline, or reuse/upload assets (no pipeline API key).'), {
|
|
376
|
+
description: z.string().describe('What is needed: Drive folder pack, filename, or subject'),
|
|
377
|
+
}, async ({ description }) => ({
|
|
378
|
+
messages: [
|
|
379
|
+
{
|
|
380
|
+
role: 'user',
|
|
381
|
+
content: {
|
|
382
|
+
type: 'text',
|
|
383
|
+
text: `${note}\n\n${TASKS_PREAMBLE}Media need: ${description}\n` +
|
|
384
|
+
'Media workflow:\n' +
|
|
385
|
+
'1. cms_edit ["customer", "task-media-pipeline-prepare"] and/or task-media-reuse-and-upload\n' +
|
|
386
|
+
'2. Oversized Drive packs: cms_edit_media action=prepare with driveFolderUrl\n' +
|
|
387
|
+
' (host holds service credentials — never ask for MEDIA_PIPELINE_API_KEY)\n' +
|
|
388
|
+
'3. cms_edit_media action=wait or status with jobId until succeeded|partial|failed\n' +
|
|
389
|
+
'4. cms_edit_media action=catalog — use previewUrl for naming/alt; readyUrl for CMS masters\n' +
|
|
390
|
+
'5. cms_edit_media action=import with optional overrides (title/alt/fileName); dryRun first if unsure\n' +
|
|
391
|
+
'6. Small one-off files: cms_edit_request_staged_upload → curl → asset upload --staged\n' +
|
|
392
|
+
'7. Link asset IDs from import map to the target entry field',
|
|
393
|
+
},
|
|
394
|
+
},
|
|
395
|
+
],
|
|
396
|
+
}));
|
|
397
|
+
}
|
|
398
|
+
//# sourceMappingURL=onboarding.js.map
|