contentrain-bulklisted
Install: claude install-skill Contentrain/ai
# Skill: Run Bulk Content Operations
> Apply safe batch operations to existing content entries.
---
## When to Use
Use this when the user wants to:
- copy one locale to another
- update status on many entries
- delete multiple collection entries
This skill is for existing content, not for schema design.
---
## Steps
### 1. Inspect the Model
Call `contentrain_status` and `contentrain_describe(model: "<model-id>")` first.
Confirm:
- model kind
- whether `i18n` is enabled
- which locales are supported
### 2. Pick the Correct Bulk Operation
- `copy_locale`: clone one locale to another for i18n-enabled `collection`, `singleton`, or `dictionary` models
- `update_status`: update metadata state — many entries at once for `collection` (by `entry_ids`) or `document` (by `slugs`), or the single record of a `singleton`/`dictionary`
- `delete_entries`: remove many collection entries at once
### 3. Apply Safety Rules
- never use `copy_locale` on non-i18n models
- `update_status` addresses records the way their meta is laid out: `entry_ids` for `collection` models, `slugs` for `document` models (meta is one file per slug — the same identity `contentrain_content_save` uses), and **neither** for `singleton`/`dictionary`, which have one meta record per locale. The wrong list is rejected with a message naming the right one.
- `publish_at` on `contentrain_content_save` does **not** publish — it gates delivery of an already-published entry. `update_status` is the only way to chang