@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,175 @@
|
|
|
1
|
+
# Capability: Media pipeline — prepare pack
|
|
2
|
+
|
|
3
|
+
Normalize a **folder of designer masters** into short-lived **public HTTPS URLs** under cms-edit upload limits, then import into Contentful with reuse-first.
|
|
4
|
+
|
|
5
|
+
**Never** expect the media pipeline service to write Contentful. Pipeline → ready URLs only. **cms-edit** owns assets/entries.
|
|
6
|
+
|
|
7
|
+
## Intent phrases
|
|
8
|
+
|
|
9
|
+
- process media folder
|
|
10
|
+
- prepare Drive assets for CMS
|
|
11
|
+
- media pipeline pack
|
|
12
|
+
- normalize oversized images/videos
|
|
13
|
+
- process case study assets
|
|
14
|
+
- upload from media pipeline
|
|
15
|
+
|
|
16
|
+
## Requires capabilities
|
|
17
|
+
|
|
18
|
+
`assetSearch` and `assetUpload`
|
|
19
|
+
|
|
20
|
+
## Prerequisites
|
|
21
|
+
|
|
22
|
+
- Hosted cms-edit with media pipeline **configured on the host** (ops env):
|
|
23
|
+
- `MEDIA_PIPELINE_BASE_URL`
|
|
24
|
+
- `MEDIA_PIPELINE_SERVICE_KEY` (server-only — **never ask the agent/user for this**)
|
|
25
|
+
- `MEDIA_PIPELINE_TENANT` (e.g. `se`, not the cms-edit projectKey)
|
|
26
|
+
- Drive folder shared **Viewer** with pipeline service account
|
|
27
|
+
`media-pipeline-reader@se-media-pipeline.iam.gserviceaccount.com`
|
|
28
|
+
(or “anyone with the link” if using API-key Drive mode on the pipeline).
|
|
29
|
+
**If prepare/status reports `drive_inaccessible` or `drive_empty_or_unshared`:** fix the share first, then re-prepare **once**. Do not treat “no media files” as a wrong folder path until share is confirmed.
|
|
30
|
+
- Profile default: `case-study-v1`
|
|
31
|
+
|
|
32
|
+
## When to use
|
|
33
|
+
|
|
34
|
+
| Situation | Action |
|
|
35
|
+
|-----------|--------|
|
|
36
|
+
| Drive/Figma package with large JPEGs/videos | **This task first**, then structure build |
|
|
37
|
+
| Single small image already in library | `task-media-reuse-and-upload` only |
|
|
38
|
+
| Masters already under limits and catalogued | Reuse search only |
|
|
39
|
+
| Prior prepare already reached `succeeded` + catalog | **Reuse that jobId** — do not re-prepare the whole folder |
|
|
40
|
+
|
|
41
|
+
## Steps (agent — single auth)
|
|
42
|
+
|
|
43
|
+
### 1. Prepare
|
|
44
|
+
|
|
45
|
+
Call MCP tool **`cms_edit_media`**:
|
|
46
|
+
|
|
47
|
+
```json
|
|
48
|
+
{
|
|
49
|
+
"action": "prepare",
|
|
50
|
+
"driveFolderUrl": "https://drive.google.com/drive/folders/…",
|
|
51
|
+
"profile": "case-study-v1",
|
|
52
|
+
"sourceNames": [
|
|
53
|
+
"BusinessCards copy.jpg",
|
|
54
|
+
"ArcticDB x3 Screens Tablet-1920.mp4",
|
|
55
|
+
"ADB_Macbook_HomeLoop.mp4"
|
|
56
|
+
]
|
|
57
|
+
}
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
| Param | On prepare |
|
|
61
|
+
|-------|------------|
|
|
62
|
+
| omit `sourceNames` | Encode **entire** folder (slow for large case-study packs) |
|
|
63
|
+
| non-empty `sourceNames` | **Allowlist** — only exact Drive file names are downloaded/encoded |
|
|
64
|
+
| `excludeSourceNames` | Skip these names (always) |
|
|
65
|
+
|
|
66
|
+
CLI:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
cms-edit media prepare --drive-folder "https://drive.google.com/drive/folders/…" \
|
|
70
|
+
--source-names "BusinessCards copy.jpg,ADB_Macbook_HomeLoop.mp4"
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Expect `{ ok: true, jobId, status: "queued", pollHint }`.
|
|
74
|
+
|
|
75
|
+
**Prefer prepare allowlist** whenever you only need og/hero/home (or a few masters). Names must match Drive display names exactly. Missing allowlist names appear as gaps (`not_found_in_folder`).
|
|
76
|
+
|
|
77
|
+
If `{ ok: false, code: "pipeline_unconfigured" }` → host ops must set env vars. **Do not** ask the user for a pipeline API key.
|
|
78
|
+
|
|
79
|
+
### 2. Wait / status
|
|
80
|
+
|
|
81
|
+
```json
|
|
82
|
+
{ "action": "wait", "jobId": "<jobId>" }
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
or
|
|
86
|
+
|
|
87
|
+
```json
|
|
88
|
+
{ "action": "status", "jobId": "<jobId>" }
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
**Pipeline lifecycle** (real pack states): `queued` → `running` → `succeeded` | `partial` | `failed`.
|
|
92
|
+
|
|
93
|
+
| Status | Meaning | Agent action |
|
|
94
|
+
|--------|---------|--------------|
|
|
95
|
+
| `queued` / `running` | Pack is processing | Keep `wait` / `status` |
|
|
96
|
+
| `succeeded` | All files ready | Proceed to catalog |
|
|
97
|
+
| `partial` | Some ready; `gaps[]` lists failures | Catalog ready items; report gaps — **do not invent** assets for gaps |
|
|
98
|
+
| `failed` | Nothing usable | Stop; report gaps |
|
|
99
|
+
| `provisioning` | **Host soft state only** (not a pipeline phase): job is registered but pack status is not readable yet | Retry wait/status only while age is **under ~90s** |
|
|
100
|
+
| `status_unavailable` (`ok: false`) | Soft grace exceeded; concurrent slot released | **Stop this jobId**. At most **one** new prepare. If the second also ends `status_unavailable`, **stop entirely** and report both jobIds (platform issue — the pack may still have completed on the pipeline). |
|
|
101
|
+
|
|
102
|
+
**Rules:**
|
|
103
|
+
|
|
104
|
+
- Do **not** invent assets for gaps.
|
|
105
|
+
- Do **not** wait 5–10+ minutes on `provisioning`.
|
|
106
|
+
- Do **not** thrash prepares (rate limit + concurrent max typically **2** per user).
|
|
107
|
+
- On `429` / too many concurrent: call `status` once on any stuck old `jobId` (to free slots if past grace), then prepare again **once**.
|
|
108
|
+
- Prefer **reusing** a job that already reached `succeeded` + catalog over preparing again for the same Drive folder.
|
|
109
|
+
|
|
110
|
+
### 3. Catalog
|
|
111
|
+
|
|
112
|
+
```json
|
|
113
|
+
{ "action": "catalog", "jobId": "<jobId>" }
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
Each asset includes:
|
|
117
|
+
|
|
118
|
+
| Field | Use |
|
|
119
|
+
|-------|-----|
|
|
120
|
+
| `readyUrl` | `asset upload --url` into Contentful |
|
|
121
|
+
| `previewUrl` / `posterUrl` | Agent vision for **title / fileName / alt** (when present) |
|
|
122
|
+
| `altDraft` / `titleDraft` | Filename seeds only — improve before save |
|
|
123
|
+
|
|
124
|
+
### 4. Import into Contentful (reuse-first)
|
|
125
|
+
|
|
126
|
+
After drafting titles/alts from **previewUrl** / **posterUrl**:
|
|
127
|
+
|
|
128
|
+
**Prefer filtering** so unused files in a shared Drive folder are not uploaded:
|
|
129
|
+
|
|
130
|
+
| Param | Use |
|
|
131
|
+
|-------|-----|
|
|
132
|
+
| `sourceNames` | Exact catalog `sourceName` allowlist (Drive file names) |
|
|
133
|
+
| `excludeSourceNames` | Skip specific files |
|
|
134
|
+
| `onlyWithOverrides` | Import only assets that have an `overrides` row (typical case-study path) |
|
|
135
|
+
|
|
136
|
+
```json
|
|
137
|
+
{
|
|
138
|
+
"action": "import",
|
|
139
|
+
"jobId": "<jobId>",
|
|
140
|
+
"withMedia": true,
|
|
141
|
+
"onlyWithOverrides": true,
|
|
142
|
+
"overrides": [
|
|
143
|
+
{ "sourceName": "OM1_Hero.jpg", "title": "OM1 hero", "alt": "…", "fileName": "se-om1-hero-v3.jpg" }
|
|
144
|
+
],
|
|
145
|
+
"dryRun": true
|
|
146
|
+
}
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
1. Always **`dryRun: true` first** — check `existing: true/false` per asset (reuse is by **fileName**).
|
|
150
|
+
2. When you need **new** assets instead of reusing prior runs, set `overrides[].fileName` to unique names.
|
|
151
|
+
3. Then import without `dryRun`.
|
|
152
|
+
|
|
153
|
+
CLI:
|
|
154
|
+
`cms-edit media import --job <id> [--dry-run] [--with-media] [--only-with-overrides] [--source-names a.jpg,b.jpg] [--exclude-source-names x.jpg] [--overrides-json '[…]']`
|
|
155
|
+
|
|
156
|
+
Import:
|
|
157
|
+
|
|
158
|
+
1. Filters catalog (allowlist / exclude / onlyWithOverrides)
|
|
159
|
+
2. Searches existing assets by fileName
|
|
160
|
+
3. Else uploads from `readyUrl` as the authenticated Contentful user
|
|
161
|
+
4. Returns `map`, `skipped[]`, and `counts` for page build
|
|
162
|
+
|
|
163
|
+
**Linking Media to components:** use singular Entry links with
|
|
164
|
+
`cms_edit ["set", "@cN", "visual", "<mediaId>", "--link"]`
|
|
165
|
+
— **never** `add … --target visual` (`add` only supports content **arrays**).
|
|
166
|
+
|
|
167
|
+
Manual `asset upload --url` remains available for one-offs.
|
|
168
|
+
|
|
169
|
+
### Hardening notes (for agents)
|
|
170
|
+
|
|
171
|
+
- Jobs are **owned by the OAuth user** who prepared them — you cannot poll another user’s `jobId`.
|
|
172
|
+
- Rate limits apply (prepares/hour, concurrent jobs).
|
|
173
|
+
- Never document or request `MEDIA_PIPELINE_API_KEY` or Blob tokens in chat.
|
|
174
|
+
- `provisioning` is **not** a real pipeline phase; do not treat it as “still encoding” for many minutes.
|
|
175
|
+
- If the MCP client times out (~180s) on `set`/`rtf`/`import`, **read / catalog / diff before retrying** — the server may already have applied the change.
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
# Capability: Media — reuse and upload
|
|
2
|
+
|
|
3
|
+
## Intent phrases
|
|
4
|
+
|
|
5
|
+
- upload image
|
|
6
|
+
- find existing asset
|
|
7
|
+
- add photo to page or article
|
|
8
|
+
- update person headshot / portrait
|
|
9
|
+
|
|
10
|
+
## Requires capabilities
|
|
11
|
+
|
|
12
|
+
`assetSearch` and `assetUpload`
|
|
13
|
+
|
|
14
|
+
## Prerequisites
|
|
15
|
+
|
|
16
|
+
- **Always run `index sync` first** if the catalog may be stale
|
|
17
|
+
- On **hosted MCP**, the server has **no filesystem** — use **staged upload** for all binary uploads (never `--base64` or a local file path in `args`)
|
|
18
|
+
|
|
19
|
+
## Reuse-first workflow (default)
|
|
20
|
+
|
|
21
|
+
1. `cms_edit ["index", "sync"]`
|
|
22
|
+
2. **Search existing assets:**
|
|
23
|
+
- `cms_edit ["asset", "search", "--filename-match", "<partial-name>"]`
|
|
24
|
+
- `cms_edit ["list", "--type", "media", "--asset-filename-match", "<partial>"]`
|
|
25
|
+
3. If match found — link by asset ID or filename in `set` / `create from-json` (`featuredImageAssetFilename`, `visualAssetFilename`, etc.)
|
|
26
|
+
4. For **`visuals`** (Media entry **array** on page/article): prefer an **existing Media entry** — `cms_edit ["list", "--type", "media", "--asset-id", "<assetId>"]` — then `set @root visuals <mediaEntryId> --links`. Do **not** `create media` or use `asset upload --with-media` when a wrapper already exists.
|
|
27
|
+
5. For **singular** component fields (e.g. `visual` on a component):
|
|
28
|
+
`cms_edit ["set", "@cN", "visual", "<mediaEntryId>", "--link"]`
|
|
29
|
+
**Never** `add media --parent @cN --target visual` — `add --target` only works for Entry-link **arrays** (`content`, `contents`, …). Bad `add --target` is rejected; it used to orphan Media drafts.
|
|
30
|
+
6. `create media` only when no Media entry wraps that asset (RTF embeds, or first article in a new composite batch — then **reuse that media ID** on sibling entries)
|
|
31
|
+
7. Bare Contentful entry IDs work with `set` (no `@` required) for mid-session Media field tweaks (width/autoplay/loop) after import — `set <mediaEntryId> width 75`.
|
|
32
|
+
|
|
33
|
+
## Upload only when no match
|
|
34
|
+
|
|
35
|
+
### Oversized masters / whole Drive folders
|
|
36
|
+
|
|
37
|
+
If files are near or over **4 MB** (hosted staged) or **10 MB** (URL/local), or the user shared a **Drive folder of masters**, do **not** improvise compression in chat.
|
|
38
|
+
|
|
39
|
+
1. Run **`task-media-pipeline-prepare`** (Drive folder → ready public URLs under limits)
|
|
40
|
+
2. Return here and import with **`--url`** + reuse-first filename search
|
|
41
|
+
|
|
42
|
+
### Hosted MCP (default)
|
|
43
|
+
|
|
44
|
+
**Always use staged upload** for ad-hoc small binaries. Do not pass base64 in `cms_edit` args — hosted MCP rejects `asset upload --base64`.
|
|
45
|
+
|
|
46
|
+
1. `cms_edit_request_staged_upload` with `fileName`, `mimeType`, optional `byteLength`, optional `title`
|
|
47
|
+
2. Run the returned `curlCommand` in a shell (POST file to `uploadUrl`)
|
|
48
|
+
3. `cms_edit` with the returned `consumeArgs` (e.g. `["asset","upload","--staged","<uploadId>",…]`)
|
|
49
|
+
|
|
50
|
+
Rules:
|
|
51
|
+
|
|
52
|
+
- Staged upload keeps binary **out of MCP args** — only a short `uploadId` is passed to Contentful
|
|
53
|
+
- Hosted limit: **4 MB** per file; **1000 upload URLs per user per hour**; TTL **60 minutes**; single-use
|
|
54
|
+
- **PNG** when the source has transparency (portraits on brand-colour cards); JPEG flattens alpha
|
|
55
|
+
- Upload alone does **not** attach the asset — follow with **link + save** (below)
|
|
56
|
+
- Use `--if-exists-by-filename` (with `--file-name`) to avoid duplicate assets when re-running
|
|
57
|
+
|
|
58
|
+
After staged upload, create a Media wrapper **only when none exists** for that asset:
|
|
59
|
+
|
|
60
|
+
```
|
|
61
|
+
cms_edit ["list", "--type", "media", "--asset-id", "<newPortraitAssetId>"]
|
|
62
|
+
cms_edit ["create", "media", "--asset-id", "<newPortraitAssetId>"]
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
**Media entry `name` (CMS list label):** defaults to the **linked asset title**. Only pass `--name` when you deliberately need a different label (e.g. two Media wrappers on one asset with distinct roles). Never use `visual-{assetId}` or `Wrapper for {assetId}` — those are migration leftovers.
|
|
66
|
+
|
|
67
|
+
To rename an existing Media wrapper: `cms_edit ["batch", "set", "<media-entry-id>:name=<asset-title>"]` then `batch save`.
|
|
68
|
+
|
|
69
|
+
Avoid `asset upload --with-media` when multiple entries will share the same image (e.g. news composites) — it creates duplicate Media entries. Upload the asset only, then one shared `create media`, then link the media ID on each entry.
|
|
70
|
+
|
|
71
|
+
**Prefer `--url`** when the file is already on **public HTTPS** under size limits — especially **media-pipeline ready pack URLs**:
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
cms_edit ["asset", "upload", "--url", "https://<public-https-url>/file.png", "--mime", "image/png", "--file-name", "headshot-name-1200.png", "--title", "…", "--if-exists-by-filename"]
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
The URL must be fetchable by the hosted MCP server. Do not use local-only URLs.
|
|
78
|
+
|
|
79
|
+
### Local CLI (only when user approves)
|
|
80
|
+
|
|
81
|
+
Local `cms-edit` may use `--base64` or `--url` when the user explicitly approves local CLI (see repo `Agents.md`). Hosted agents must not use local CLI without permission.
|
|
82
|
+
|
|
83
|
+
## Link uploaded asset to an entry
|
|
84
|
+
|
|
85
|
+
Upload returns an **asset ID**. Attach it, then save:
|
|
86
|
+
|
|
87
|
+
**Person portrait (`media` is an Asset link):**
|
|
88
|
+
|
|
89
|
+
```
|
|
90
|
+
cms_edit ["open", "--id", "<person-entry-id>"]
|
|
91
|
+
cms_edit ["asset", "set", "@root", "media", "<new-asset-id>"]
|
|
92
|
+
cms_edit ["diff"]
|
|
93
|
+
cms_edit ["save"]
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
**Component `visual` (Media Entry link, singular):**
|
|
97
|
+
|
|
98
|
+
```
|
|
99
|
+
cms_edit ["set", "@cN", "visual", "<media-entry-id>", "--link"]
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
**Article featured image / asset fields:** `asset set <ref> <field> <asset-id>` (or `set … --asset`) when the field is an Asset link.
|
|
103
|
+
|
|
104
|
+
Always `diff` → `save`. Verify with `preview urls` on the public path.
|
|
105
|
+
|
|
106
|
+
## Confirmation gates
|
|
107
|
+
|
|
108
|
+
1. Report search results before uploading
|
|
109
|
+
2. Confirm upload filename/title with user if ambiguous
|
|
110
|
+
3. After upload, confirm `asset info <id>` shows expected width/height/size before linking
|
|
111
|
+
|
|
112
|
+
## Out of scope
|
|
113
|
+
|
|
114
|
+
- Publish assets (draft upload; human publishes in Contentful UI if needed)
|
|
115
|
+
- Deleting orphan assets from failed uploads (human cleanup in Contentful)
|
|
116
|
+
|
|
117
|
+
## Related resources
|
|
118
|
+
|
|
119
|
+
- `task-media-pipeline-prepare`
|
|
120
|
+
|
|
121
|
+
- `cms-edit://customer/defaults` (featured image rules)
|
|
122
|
+
- `cms-edit://customer/people` (person `media` field, when present)
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
# Capability: Media — quality review
|
|
2
|
+
|
|
3
|
+
## Intent phrases
|
|
4
|
+
|
|
5
|
+
- audit CMS images
|
|
6
|
+
- media review
|
|
7
|
+
- find oversized images
|
|
8
|
+
- missing alt text across the space
|
|
9
|
+
- unused assets
|
|
10
|
+
- review videos and animations
|
|
11
|
+
|
|
12
|
+
## Requires capabilities
|
|
13
|
+
|
|
14
|
+
`assetSearch` (index sync + asset review)
|
|
15
|
+
|
|
16
|
+
## Prerequisites
|
|
17
|
+
|
|
18
|
+
1. Read `cms-edit://customer/overview` — note **production site URL** (if set) for prod link columns
|
|
19
|
+
2. Read `cms-edit://customer/capabilities` — `projectKey`, space ID
|
|
20
|
+
3. **`index sync`** if the catalog may be stale
|
|
21
|
+
4. **Local CLI / Cursor:** `CONTENTFUL_PREVIEW_ACCESS_TOKEN` and `CMS_EDIT_TOKEN` (usage resolution needs CMA)
|
|
22
|
+
5. **Hosted MCP:** do not pass `--space`; never combine `--include-passing`, `--include-usage`, and `--usage-limit 0` (timeouts)
|
|
23
|
+
|
|
24
|
+
## What gets checked
|
|
25
|
+
|
|
26
|
+
| Check | Issue code | Severity |
|
|
27
|
+
|-------|------------|----------|
|
|
28
|
+
| Descriptive filename | `bad_filename` | fail |
|
|
29
|
+
| Alt text present | `missing_alt` | fail |
|
|
30
|
+
| Alt text quality | `weak_alt` | fail |
|
|
31
|
+
| Width ≤ max (not SVG/Lottie) | `oversized_width` | fail |
|
|
32
|
+
| File size limits | `oversized_file` | fail / warn |
|
|
33
|
+
| Animated GIF | `animated_gif` | fail |
|
|
34
|
+
| No media wrapper in index | `no_media_wrapper` | warn |
|
|
35
|
+
|
|
36
|
+
Default thresholds: max width **2000px**, images **800 KB**, video **8 MB**, Lottie **400 KB**. Override with CLI flags (see `cms-edit help asset-review`).
|
|
37
|
+
|
|
38
|
+
## Phase 1 — Sync index
|
|
39
|
+
|
|
40
|
+
**Hosted MCP:**
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
cms_edit ["index", "sync"]
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
**Local CLI:**
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
cms-edit index sync
|
|
50
|
+
# multi-space: cms-edit index sync --space <projectKey>
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Default: **Preview API** (drafts). Use `--published` on sync and review for delivery-only content.
|
|
54
|
+
|
|
55
|
+
## Phase 2 — Quality audit (failures)
|
|
56
|
+
|
|
57
|
+
**Hosted MCP:**
|
|
58
|
+
|
|
59
|
+
```
|
|
60
|
+
cms_edit ["--json", "asset", "review"]
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
**Local CLI:**
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
cms-edit --json-output asset review > docs/media-review-failures.json
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Exit code **1** when any asset fails (expected for remediation workflows).
|
|
70
|
+
|
|
71
|
+
## Phase 3 — Usage and likely-unused (optional, slower)
|
|
72
|
+
|
|
73
|
+
Resolves slug-bearing CMS ancestors (page, article, tag, person, etc.) per asset.
|
|
74
|
+
|
|
75
|
+
**Hosted MCP** (capped — default 50 assets):
|
|
76
|
+
|
|
77
|
+
```
|
|
78
|
+
cms_edit ["--json", "asset", "review", "--include-usage", "--usage-limit", "50"]
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
For a larger sample on hosted, raise the limit in steps (e.g. `100`) — do not use `0` on hosted MCP.
|
|
82
|
+
|
|
83
|
+
**Local CLI** (full inventory):
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
cms-edit --json-output asset review \
|
|
87
|
+
--include-passing --include-usage --usage-limit 0 \
|
|
88
|
+
> docs/media-review-full.json
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
JSON fields when usage runs: `usages[]` per asset (`slug`, `label`, `contentType`), plus `usageLimit`, `usageResolvedCount`, `usageTruncated`.
|
|
92
|
+
|
|
93
|
+
**Likely unused:** `usages` empty **and** `no_media_wrapper` warning — verify manually (rich-text embeds may not create a media wrapper).
|
|
94
|
+
|
|
95
|
+
## Phase 4 — Production URLs (spreadsheet)
|
|
96
|
+
|
|
97
|
+
Read production base URL from `cms-edit://customer/overview` or `capabilities.json` → `website.productionSiteUrl`.
|
|
98
|
+
|
|
99
|
+
If missing, check the app `.env.example` for `SITEMAP_PROD_URL` or `PRODUCTION_SITE_URL`, or ask the user once.
|
|
100
|
+
|
|
101
|
+
For each `usages[].slug`, prod URL = `{productionSiteUrl}{slug}` (slug usually starts with `/`).
|
|
102
|
+
|
|
103
|
+
## Phase 5 — Deliverables
|
|
104
|
+
|
|
105
|
+
Use skill **`contentful-cms-media-review`** for:
|
|
106
|
+
|
|
107
|
+
- Excel workbook (`Issues` + `Summary` sheets) from failures JSON
|
|
108
|
+
- Executive summary (counts, top issue types, quick wins)
|
|
109
|
+
- Optional image guide extension (full inventory + `docs/descriptions/{assetId}.json` cache)
|
|
110
|
+
|
|
111
|
+
Default output path: `docs/media-review-<projectKey>-<date>.xlsx`.
|
|
112
|
+
|
|
113
|
+
## Phase 6 — Fixes (optional, user-approved)
|
|
114
|
+
|
|
115
|
+
Alt text only — asset-level, draft:
|
|
116
|
+
|
|
117
|
+
```
|
|
118
|
+
cms_edit ["asset", "set-description", "<asset-id>", "Descriptive alt text"]
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Do **not** publish assets. For per-page context fixes, use skill `contentful-cms-alt-text-audit`.
|
|
122
|
+
|
|
123
|
+
## Confirmation gates
|
|
124
|
+
|
|
125
|
+
1. **Propose** scope (failures only vs full inventory + usage) — user approves
|
|
126
|
+
2. **Read-only** by default — no `asset set-description` without explicit approval
|
|
127
|
+
3. **Summarize** findings before any fix pass
|
|
128
|
+
|
|
129
|
+
## Out of scope
|
|
130
|
+
|
|
131
|
+
- Publish assets or entries
|
|
132
|
+
- Definitive “live on production” verification (optional dev crawl of `ctfassets.net/{assetId}` — not automated here)
|
|
133
|
+
- Bulk asset re-upload or dimension resizing in Contentful
|
|
134
|
+
|
|
135
|
+
## Related resources
|
|
136
|
+
|
|
137
|
+
- `cms-edit://customer/task-media-reuse-and-upload` — search/reuse before upload
|
|
138
|
+
- `cms-edit help asset-review` — CLI flags and thresholds
|
|
139
|
+
- Skill `contentful-cms-media-review` — spreadsheet schema and image-guide extension
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Capability: Navigation
|
|
2
|
+
|
|
3
|
+
## Intent phrases
|
|
4
|
+
|
|
5
|
+
- update menu
|
|
6
|
+
- change navigation links
|
|
7
|
+
- edit footer
|
|
8
|
+
|
|
9
|
+
## Requires capabilities
|
|
10
|
+
|
|
11
|
+
`navigation`
|
|
12
|
+
|
|
13
|
+
## Prerequisites
|
|
14
|
+
|
|
15
|
+
- Read `cms-edit://customer/routing` for URL shapes
|
|
16
|
+
- `cms_edit ["index", "sync"]` for navigation entry lookup
|
|
17
|
+
|
|
18
|
+
## Steps
|
|
19
|
+
|
|
20
|
+
1. `cms_edit ["list", "--type", "navigation"]` — find nav entry
|
|
21
|
+
2. `cms_edit ["nav", "open", "--id", "<navigationId>"]` or by slug
|
|
22
|
+
3. `snapshot` — inspect nav items
|
|
23
|
+
4. Add/clone/link items per navigation commands
|
|
24
|
+
5. `diff` → `save`
|
|
25
|
+
|
|
26
|
+
See `contentful-cms-navigation` skill for full command reference in dev environments.
|
|
27
|
+
|
|
28
|
+
## Confirmation gates
|
|
29
|
+
|
|
30
|
+
1. Confirm which menu (header/footer) and link changes
|
|
31
|
+
2. `diff` before `save`
|
|
32
|
+
|
|
33
|
+
## Out of scope
|
|
34
|
+
|
|
35
|
+
- Publish
|
|
36
|
+
|
|
37
|
+
## Related resources
|
|
38
|
+
|
|
39
|
+
- `cms-edit://customer/routing`
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
# Capability: Preview verification
|
|
2
|
+
|
|
3
|
+
## Intent phrases
|
|
4
|
+
|
|
5
|
+
- preview changes
|
|
6
|
+
- check staging
|
|
7
|
+
- verify page looks right
|
|
8
|
+
- open in browser
|
|
9
|
+
|
|
10
|
+
## Requires capabilities
|
|
11
|
+
|
|
12
|
+
Always available.
|
|
13
|
+
|
|
14
|
+
## Prerequisites
|
|
15
|
+
|
|
16
|
+
- Draft saved (`save` creates drafts)
|
|
17
|
+
- Staging URL from `cms-edit://customer/overview` or `capabilities.json` → `website.devBaseUrl`
|
|
18
|
+
- Entry ID from session (after `open` / `save`) or `--entry-id`
|
|
19
|
+
|
|
20
|
+
## Preview targets
|
|
21
|
+
|
|
22
|
+
After saving a draft, agents should return **all applicable URLs** and explain which to use when.
|
|
23
|
+
|
|
24
|
+
| Target | Label | When to use |
|
|
25
|
+
|--------|-------|-------------|
|
|
26
|
+
| **contentfulLivePreview** | Live preview (publish here) | **Primary for editors when `url` is present.** Opens `app.contentful.com/.../entries/.../preview/...` — in-app preview with inspector. User clicks the green **Publish** button at the top to go live. If `url` is `null`, read `unavailableReason` / `notes` — do not invent a Live Preview link; use **staging** + **contentfulEntry** instead. |
|
|
27
|
+
| **staging** | Preview (staging site) | Full-page check on staging, e.g. `{devBaseUrl}/resources/news/{tag}/{slug}/` (includes Vercel bypass params when configured). Always valid for draft visibility when staging is configured. |
|
|
28
|
+
| **siteLivePreview** | Preview redirect | `{devBaseUrl}/preview?id={entryId}` — entry-aware redirect to the staging path. |
|
|
29
|
+
| **production** | Production site | Published content only — compare after publish. |
|
|
30
|
+
| **contentfulEntry** | Contentful entry editor | Classic entry form. Prefer **Live preview** when available; otherwise this is the publish path. |
|
|
31
|
+
|
|
32
|
+
## Steps
|
|
33
|
+
|
|
34
|
+
1. After `save`, list all preview URLs:
|
|
35
|
+
```
|
|
36
|
+
cms_edit ["preview", "urls", "<slug>"]
|
|
37
|
+
```
|
|
38
|
+
Or with explicit entry ID:
|
|
39
|
+
```
|
|
40
|
+
cms_edit ["preview", "urls", "<slug>", "--entry-id", "<entry-id>"]
|
|
41
|
+
```
|
|
42
|
+
Use `--json` for machine-readable output.
|
|
43
|
+
|
|
44
|
+
2. **Hand off to the editor:**
|
|
45
|
+
- **Live preview** — when `url` is non-null: reviewing the draft and publishing (green Publish button in Contentful).
|
|
46
|
+
- **Preview (staging site)** — full-screen check on the staging deployment (always offer when available).
|
|
47
|
+
- If Live Preview is unavailable, say so briefly using `unavailableReason` and point at staging + classic entry editor.
|
|
48
|
+
|
|
49
|
+
3. Summarize what to check before publish handoff — use the checklist below (add multi-block items when relevant).
|
|
50
|
+
|
|
51
|
+
### What to check (all drafts)
|
|
52
|
+
|
|
53
|
+
- [ ] Headings: page H1 from hero/template only; no invented body section titles
|
|
54
|
+
- [ ] CTAs / links resolve
|
|
55
|
+
- [ ] Images and featured/OG media present and roughly correct crop
|
|
56
|
+
- [ ] Template blocks not duplicated in `content`
|
|
57
|
+
|
|
58
|
+
### Multi-block / package builds (extra)
|
|
59
|
+
|
|
60
|
+
When the draft was built from a soft-proof or multi-block plan:
|
|
61
|
+
|
|
62
|
+
- [ ] **Sequence** matches the agreed soft-proof (no silent reordering)
|
|
63
|
+
- [ ] **Placeholders** for GO-WITH-GAPS slots still present and labeled (not dropped)
|
|
64
|
+
- [ ] **No invented pairs** — side-by-side collections only where the source was a true pair
|
|
65
|
+
- [ ] **Copy** is the source text structured into blocks — not rewritten
|
|
66
|
+
- [ ] Media behaviour per site playbook (e.g. decorative video autoplay/loop, width %)
|
|
67
|
+
- [ ] Adjacent body-only sections may look airy on some sites (known section spacing) — flag, don’t invent empty paragraphs to “fix”
|
|
68
|
+
|
|
69
|
+
### Legacy single URL
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
cms_edit ["preview", "url", "--page-slug", "<slug>"]
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
Returns the staging preview path only.
|
|
76
|
+
|
|
77
|
+
## Confirmation gates
|
|
78
|
+
|
|
79
|
+
1. Confirm draft saved before preview
|
|
80
|
+
2. Summarize what to check (headings, CTAs, images; multi-block soft-proof items when relevant)
|
|
81
|
+
3. Tell user production URL will not show draft content until published
|
|
82
|
+
|
|
83
|
+
## Out of scope
|
|
84
|
+
|
|
85
|
+
- Publish (human uses Live preview → Publish button)
|
|
86
|
+
- Rewriting copy during QA
|
|
87
|
+
|
|
88
|
+
## Related resources
|
|
89
|
+
|
|
90
|
+
- `cms-edit://customer/overview`
|
|
91
|
+
- `cms-edit://customer/task-publish-handoff`
|
|
92
|
+
- `cms-edit://customer/task-source-readiness-review`
|
|
93
|
+
- `cms-edit://customer/production-site`
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Capability: Publish handoff
|
|
2
|
+
|
|
3
|
+
## Intent phrases
|
|
4
|
+
|
|
5
|
+
- publish changes
|
|
6
|
+
- go live
|
|
7
|
+
- make changes live
|
|
8
|
+
|
|
9
|
+
## Requires capabilities
|
|
10
|
+
|
|
11
|
+
Always available.
|
|
12
|
+
|
|
13
|
+
## What cms-edit does
|
|
14
|
+
|
|
15
|
+
- Creates and updates **drafts only**
|
|
16
|
+
- **Cannot** publish, unpublish, archive, or delete published entries
|
|
17
|
+
|
|
18
|
+
## Handoff steps
|
|
19
|
+
|
|
20
|
+
1. Ensure all edits are saved (`diff` was reviewed)
|
|
21
|
+
2. Run `cms_edit ["preview", "urls", "<slug>"]` (or use session entry id after save)
|
|
22
|
+
3. Give the user **both** links:
|
|
23
|
+
- **Live preview (publish here)** — `app.contentful.com/.../entries/.../preview/...` — open this to review and click the green **Publish** button at the top
|
|
24
|
+
- **Preview (staging site)** — full staging URL for a full-page check (optional)
|
|
25
|
+
4. Tell the user which entry was changed (title, slug, CMS label)
|
|
26
|
+
5. Remind them: production URL updates 1–3 minutes after publish
|
|
27
|
+
|
|
28
|
+
## Confirmation gates
|
|
29
|
+
|
|
30
|
+
1. Never claim changes are live until a human publishes
|
|
31
|
+
2. Always include the **Live preview** link when `contentfulLivePreview` is available
|
|
32
|
+
3. List draft entries awaiting publish
|
|
33
|
+
|
|
34
|
+
## Out of scope
|
|
35
|
+
|
|
36
|
+
- Automated publish (intentionally unsupported)
|
|
37
|
+
|
|
38
|
+
## Related resources
|
|
39
|
+
|
|
40
|
+
- `cms-edit://customer/task-preview-verify`
|
|
41
|
+
- `cms-edit://customer/overview`
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Capability: SEO meta descriptions
|
|
2
|
+
|
|
3
|
+
## Intent phrases
|
|
4
|
+
|
|
5
|
+
- update meta descriptions
|
|
6
|
+
- improve SEO for Google
|
|
7
|
+
- change page descriptions for search
|
|
8
|
+
|
|
9
|
+
## Requires capabilities
|
|
10
|
+
|
|
11
|
+
`pages` or `articles`
|
|
12
|
+
|
|
13
|
+
## Prerequisites
|
|
14
|
+
|
|
15
|
+
- Field name is **`description`** (meta description) on pages and articles
|
|
16
|
+
- `cms_edit ["list", "--type", "page"]` for page inventory
|
|
17
|
+
|
|
18
|
+
## Steps
|
|
19
|
+
|
|
20
|
+
**Per entry (hosted editors):**
|
|
21
|
+
|
|
22
|
+
1. `cms_edit ["open", "--page-slug", "<slug>"]`
|
|
23
|
+
2. `cms_edit ["set", "@p0", "description", "<new meta description>"]`
|
|
24
|
+
3. `cms_edit ["diff"]` → `cms_edit ["save"]`
|
|
25
|
+
|
|
26
|
+
**Many entries with known IDs:**
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
cms_edit ["batch", "set", "<pageId>:description=…", …]
|
|
30
|
+
cms_edit ["batch", "save"]
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
**Dev agents only** — if `capabilities.devTools.cmsSeoAudit` is true, developers may run the site's `cms:seo-audit` CSV workflow locally. Hosted editors should use per-entry updates above.
|
|
34
|
+
|
|
35
|
+
## Confirmation gates
|
|
36
|
+
|
|
37
|
+
1. Propose new descriptions (or selection of pages) — user approves
|
|
38
|
+
2. `diff` before `save`
|
|
39
|
+
|
|
40
|
+
## Out of scope
|
|
41
|
+
|
|
42
|
+
- Publish
|
|
43
|
+
- Keyword research (descriptions are editorial)
|
|
44
|
+
|
|
45
|
+
## Related resources
|
|
46
|
+
|
|
47
|
+
- `cms-edit://customer/routing`
|
|
48
|
+
- `cms-edit://customer/brand` (if present)
|