
Umbraco Entity Bulk Actions
- 293 installs
- 26 repo stars
- Updated August 1, 2026
- umbraco/umbraco-cms-backoffice-skills
Helps with ai & agent building tasks.
About
umbraco-entity-bulk-actions is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted coding.
- umbraco-entity-bulk-actions
- AI & Agent Building
- AI-coding skill
Umbraco Entity Bulk Actions by the numbers
- 293 all-time installs (skills.sh)
- +12 installs in the week ending Aug 5, 2026 (Skillselion tracking)
- Ranked #2,333 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/umbraco/umbraco-cms-backoffice-skills --skill umbraco-entity-bulk-actionsAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 293 |
|---|---|
| repo stars | ★ 26 |
| Last updated | August 1, 2026 |
| Repository | umbraco/umbraco-cms-backoffice-skills ↗ |
What it does
Helps with ai & agent building tasks.
Files
Umbraco Entity Bulk Actions
What is it?
Entity Bulk Actions perform an action on a selection of multiple items at once. They appear in the collection selection toolbar when users select multiple items, enabling batch operations like bulk publishing, deleting, or custom processing across multiple entities simultaneously.
Documentation
Always fetch the latest docs before implementing:
- Main docs: https://docs.umbraco.com/umbraco-cms/customizing/extending-overview/extension-types/entity-bulk-actions
- Collections: https://docs.umbraco.com/umbraco-cms/customizing/extending-overview/extension-types/collections
- Foundation: https://docs.umbraco.com/umbraco-cms/customizing/foundation
- Extension Registry: https://docs.umbraco.com/umbraco-cms/customizing/extending-overview/extension-registry
Related Foundation Skills
- Repository Pattern: When implementing bulk operations that need data access
- Reference skill:
umbraco-repository-pattern
- Conditions: When controlling bulk action visibility based on collection or permissions
- Reference skill:
umbraco-conditions
Workflow
1. Fetch docs - Use WebFetch on the URLs above 2. Ask questions - What collection? What bulk operation? What entity types? 3. Generate files - Create manifest + bulk action class based on latest docs 4. Explain - Show what was created and how to test
Minimal Examples
Manifest (manifests.ts)
import type { ManifestEntityBulkAction } from '@umbraco-cms/backoffice/extension-registry';
import { MyBulkAction } from './my-bulk-action.js';
const manifest: ManifestEntityBulkAction = {
type: 'entityBulkAction',
alias: 'My.EntityBulkAction',
name: 'My Bulk Action',
weight: 10,
api: MyBulkAction,
meta: {
icon: 'icon-check',
label: 'Process Selected',
},
conditions: [
{
alias: 'Umb.Condition.CollectionAlias',
match: 'Umb.Collection.Document',
},
],
};
export const manifests = [manifest];Bulk Action Implementation (my-bulk-action.ts)
import { UmbEntityBulkActionBase } from '@umbraco-cms/backoffice/entity-bulk-action';
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
export class MyBulkAction extends UmbEntityBulkActionBase<never> {
constructor(host: UmbControllerHost, args: { selection: Array<string> }) {
super(host, args);
}
async execute() {
// this.selection contains array of unique identifiers
console.log('Processing items:', this.selection);
for (const unique of this.selection) {
// Process each selected item
console.log('Processing:', unique);
}
alert(`Processed ${this.selection.length} items`);
}
}Bulk Action with Repository
import { UmbEntityBulkActionBase } from '@umbraco-cms/backoffice/entity-bulk-action';
export class MyBulkAction extends UmbEntityBulkActionBase<MyRepository> {
async execute() {
// Process all selected items via repository
for (const unique of this.selection) {
await this.repository?.processItem(unique);
}
}
}Manifest with Multiple Conditions
const manifest: ManifestEntityBulkAction = {
type: 'entityBulkAction',
alias: 'My.MediaBulkAction',
name: 'Process Media',
api: MyBulkAction,
meta: {
icon: 'icon-picture',
label: 'Optimize Images',
},
conditions: [
{
alias: 'Umb.Condition.CollectionAlias',
match: 'Umb.Collection.Media',
},
],
};Common Collection Aliases
Umb.Collection.Document- Content collectionUmb.Collection.Media- Media collectionUmb.Collection.Member- Member collection
That's it! Always fetch fresh docs, keep examples minimal, generate complete working code.