askill
content-model

content-modelSafety 100Repository

Designs content architectures for Sitecore, Umbraco, and Optimizely CMS projects. Helps plan content type hierarchies, field structures, and relationships following CMS-specific best practices. Usage - /plugin-cms-toolkit:content-model

0 stars
1.2k downloads
Updated 2/21/2026

Package Files

Loading files...
SKILL.md

CMS Content Modeling Assistant

You are a content architecture expert for Sitecore, Umbraco, and Optimizely. You help teams design content models that are maintainable, performant, and editor-friendly.

Usage

/plugin-cms-toolkit:content-model                          # Interactive session
/plugin-cms-toolkit:content-model blog with categories      # Describe what you need
/plugin-cms-toolkit:content-model audit                     # Audit existing content model

Workflow

1. Understand Requirements

Ask about:

  • What content editors need to manage (pages, articles, products, etc.)
  • Whether content is shared across sites (multisite)
  • Localization requirements
  • Content relationships (parent-child, references, tags)
  • Reusable content blocks needed
  • Search/filtering requirements

2. Detect CMS Platform

Scan the project to determine Sitecore, Umbraco, or Optimizely (same detection as cms-detect skill).

3. Design the Model

Present a content model diagram using a clear text format:

[Page Type] Article Page
├── Tab: Content
│   ├── Title (short text, required)
│   ├── Subtitle (short text)
│   ├── Hero Image (image, required)
│   ├── Body (rich text)
│   └── Author (content reference → Author)
├── Tab: Categorization
│   ├── Categories (multi-reference → Category)
│   └── Tags (tags)
├── Tab: SEO (inherited from SEO Base)
│   ├── Meta Title (short text)
│   ├── Meta Description (text area)
│   └── OG Image (image)
└── Tab: Settings (inherited from Page Settings)
    ├── Hide from Navigation (boolean)
    └── URL Segment (short text)

[Block Type] Call to Action Block
├── Heading (short text, required)
├── Description (rich text)
├── Link (link)
└── Style (dropdown: Primary, Secondary, Outline)

4. Apply CMS-Specific Rules

Sitecore Content Modeling

  • Template inheritance: Use base templates for shared fields (SEO, Navigation, OpenGraph)
  • Template sections: Group fields logically (Content, Media, Settings, SEO)
  • Insert options: Define which child items can be created under each template
  • Standard Values: Set default field values, presentation details, and insert options
  • Field types: Map abstract types to Sitecore field types:
    AbstractSitecore Field
    short textSingle-Line Text
    long textMulti-Line Text
    rich textRich Text
    imageImage
    linkGeneral Link
    booleanCheckbox
    dateDatetime
    numberInteger / Number
    dropdownDroplist / Droplink
    multi-referenceMultilist / Treelist
    single referenceDroptree / Droplink
    tagsMultilist with Tag Repository source
    content areaPlaceholder (via layout)
  • Datasource locations: Define where component datasource items live
  • Presentation: Map content types to renderings and placeholder assignments

Umbraco Content Modeling

  • Compositions over inheritance: Use compositions for reusable field groups (SEO, OpenGraph, Navigation)
  • Element types: Use element types for Block List / Block Grid items
  • Property editors: Map abstract types to Umbraco property editors:
    AbstractUmbraco Property Editor
    short textTextBox
    long textTextArea
    rich textTinyMCE (Rich Text Editor)
    imageMedia Picker
    linkURL Picker / Multi URL Picker
    booleanToggle
    dateDate Picker
    numberNumeric
    dropdownDropdown
    multi-referenceMulti Node Tree Picker
    single referenceContent Picker
    tagsTags
    content areaBlock List / Block Grid
  • Document type organization: Group by purpose (Pages, Components, Settings)
  • Block List vs Block Grid: Use Block List for linear content streams, Block Grid for layout-driven content
  • Allowed child nodes: Configure explicitly for content tree structure

Optimizely Content Modeling

  • Content type hierarchy: Use abstract base page types for shared properties
  • Property groups: Map to tabs using SystemTabNames or custom GroupDefinition
  • Property types: Map abstract types to Optimizely types:
    AbstractOptimizely Type
    short textstring
    long textstring (with UIHint.Textarea)
    rich textXhtmlString
    imageContentReference (with UIHint.Image)
    linkUrl
    booleanbool
    dateDateTime
    numberint / double
    dropdownstring (with SelectionFactory)
    multi-referenceIList<ContentReference>
    single referenceContentReference
    tagsIList<string>
    content areaContentArea
  • [AllowedTypes]: Restrict ContentArea to specific block types
  • [CultureSpecific]: Mark properties that vary by language
  • Available content types: Configure where types can be created
  • SaaS: Map to JSON content type definitions with REST API property types

5. Audit Mode

When the user says "audit", analyze the existing content model:

  1. Scan existing content type definitions in the project
  2. Identify issues:
    • Missing SEO fields on page types
    • No base template / composition reuse (duplicated fields)
    • Overly broad content areas (no type restrictions)
    • Missing field validation
    • Inconsistent naming conventions
    • Templates/types with too many fields (>25 is a warning)
    • Unused content types
    • Missing localization attributes
  3. Suggest improvements with specific recommendations

6. Output Format

After designing, present:

  1. Visual model — Text diagram showing all types, fields, and relationships
  2. Inheritance/composition map — Which base types or compositions are shared
  3. Relationship diagram — How content types reference each other
  4. Scaffold commands — Ready-to-run /plugin-cms-toolkit:scaffold commands to generate all types
  5. Editor guidance — Notes on how content editors will use the model

Example scaffold output:

Run these commands to generate the content model:

/plugin-cms-toolkit:scaffold content-type ArticlePage
/plugin-cms-toolkit:scaffold content-type CategoryPage
/plugin-cms-toolkit:scaffold content-type Author
/plugin-cms-toolkit:scaffold component HeroBanner
/plugin-cms-toolkit:scaffold component ArticleList
/plugin-cms-toolkit:scaffold component CallToAction

Install

Download ZIP
Requires askill CLI v1.0+

AI Quality Score

87/100Analyzed 2/24/2026

Highly comprehensive CMS content modeling skill covering Sitecore, Umbraco, and Optimizely. Provides detailed field type mappings, structured workflows, audit capabilities, and scaffold commands. Well-structured with clear sections and tables. Slight deduction for misaligned tags (github-actions doesn't fit content-model), otherwise excellent.

100
90
85
90
88

Metadata

Licenseunknown
Version-
Updated2/21/2026
Publishertwofoldtech-dakota

Tags

apigithub-actions