From drupal-core
Use when setting up editorial workflows, managing publishing states, or configuring content approval processes. Covers Drupal core Workflows and Content Moderation modules — states, transitions, and entity type/bundle attachments.
npx claudepluginhub ajv009/drupal-devkitThis skill uses the workspace's default tool permissions.
Content moderation in Drupal uses the core Workflows and Content Moderation modules to define editorial processes for content. Every workflow consists of states, transitions, and entity type attachments.
Implements editorial workflows for headless CMS with C# enums, state definitions, transitions, role permissions, notifications, and state machine service.
Manages Webflow CMS collections and items via Data API v2: list, CRUD (single/bulk), publish. For dynamic content like blog posts or team members.
Craft CMS 5 content modeling — sections, entry types, fields, Matrix, relations, project config, and content architecture strategy. Covers everything editors and developers need to structure content in Craft: choosing section types, designing entry types and field layouts, selecting field types for specific needs, configuring Matrix and nested entries, setting up relations and eager loading, and planning multi-site propagation. Triggers on: section types (single, channel, structure), entry types, field types, field layout design, field type selection, Matrix configuration, nested entries, relatedTo, eager loading, .with(), .eagerly(), categories, tags, globals, global sets, preloadSingles, propagation, multi-site content, URI format, project config, YAML, content architecture, content strategy, taxonomy, asset volumes, filesystems, image transforms, user groups, content permissions, entries-as-taxonomy, entrify, entrification, CKEditor vs Matrix, CMS editions, site propagation, multi-language, language groups, localization, translation method, field translation, content migration, reserved handles, field instances. Always use when planning content architecture, creating sections/fields, configuring Matrix, setting up relations, choosing field types, designing field layouts, making content modeling decisions, or planning multi-site content propagation. Do NOT trigger for PHP plugin/module development, custom field type code, front-end Twig templates, or buildchain configuration.
Share bugs, ideas, or general feedback.
Content moderation in Drupal uses the core Workflows and Content Moderation modules to define editorial processes for content. Every workflow consists of states, transitions, and entity type attachments.
published (content is live and visible to anonymous users) and default_revision (this revision is the one loaded by default). The "Draft" and "Published" states are required and cannot be deleted.from_states and a single to_state. Transitions control which state changes are permitted.node:article, node:page, media:image). A bundle can only have one workflow at a time.When a new content moderation workflow is created, it automatically receives:
draft) -- not published, is default revisionpublished) -- published, is default revision| Flag | Value | Meaning |
|---|---|---|
published | true | Content in this state is visible to anonymous/public users |
published | false | Content is hidden from public view |
default_revision | true | This revision is the one loaded by default |
default_revision | false | Only used for forward revisions (draft on top of published) |
| State | Published | Default Revision | Purpose |
|---|---|---|---|
| Review / In Review | false | true | Content awaiting editorial review |
| Archived | false | true | Content removed from public view |
| Needs Work | false | true | Content sent back for revisions |
| Approved | false | true | Content approved but not yet live |
in_review, needs_work.from_states parameter for transitions accepts a JSON array, e.g. ["draft", "review"].| # | Tool | Operation | Description |
|---|---|---|---|
| 1 | list_workflows | Read | Lists all content moderation workflows with their states and transitions summary. |
| 2 | get_workflow | Read | Gets full details of a workflow including states (with published/default_revision flags and weights), transitions (with from/to states and weights), and attached entity types/bundles. |
| 3 | create_workflow | Write | Creates a new content moderation workflow with a given ID and label. The workflow is created with default Draft and Published states. |
| 4 | delete_workflow | Write | Deletes a content moderation workflow. The workflow must not be attached to any entity types -- detach all entity types first. |
| 5 | add_state | Write | Adds a new state to a workflow with published and default_revision flags. |
| 6 | update_state | Write | Updates the label, weight, published, or default_revision flags of an existing state. |
| 7 | delete_state | Write | Deletes a state from a workflow. Cannot delete required states (draft or published). |
| 8 | add_transition | Write | Adds a new transition specifying from_states (JSON array) and to_state. |
| 9 | update_transition | Write | Updates the label, weight, or from_states of an existing transition. |
| 10 | delete_transition | Write | Deletes a transition from a workflow. |
| 11 | attach_entity_type | Write | Attaches a workflow to an entity type and bundle combination (e.g. node:article). |
| 12 | detach_entity_type | Write | Removes a workflow from an entity type and bundle combination. |
list_workflows first to see available workflows.get_workflow to inspect full details before making changes.List all content moderation workflows
Show me the editorial workflow configuration
What states and transitions are in the default workflow?
Create an editorial workflow with Draft, In Review, and Published states
Step-by-step breakdown:
create_workflow with id: editorial and label: Editorialadd_state with state_id: in_review, label: In Review, published: false, default_revision: trueadd_transition with transition_id: submit_for_review, label: Submit for Review, from_states: ["draft"], to_state: in_reviewadd_transition with transition_id: publish, update from_states to include in_reviewadd_transition with transition_id: send_back, label: Send Back to Draft, from_states: ["in_review"], to_state: draftCreate a multi-stage workflow with Draft, Editorial Review, Legal Review, and Published
Add an 'Archived' state to the editorial workflow
Add a 'Needs Revision' state that is not published
Update the 'In Review' state label to 'Under Editorial Review'
Remove the 'Pending' state from the workflow
Add a transition from Draft to In Review called 'Submit for Review'
Allow editors to move content from In Review back to Draft
Add a 'Publish' transition from In Review to Published
Remove the direct Draft to Published transition
Attach the editorial workflow to the article content type
Apply the approval workflow to both articles and pages
Detach the workflow from the blog post content type
Set up a full editorial workflow for articles with Draft, Review, Published, and Archived states with appropriate transitions
Create a simple publish/unpublish workflow and attach it to all content types
Content moderation workflow management requires one of:
administer content moderation via agentadminister workflows