knowledge_move
Move knowledge pages to a new slug or domain while preserving citations and verification history. Supports single-page moves and batch re-homing by slug list or domain prefix.
Instructions
Re-key or re-domain a knowledge page in place — same row, same uuid, citations and verification history preserved. Three modes: (1) Single-page: provide slug + new_slug and/or new_domain. Slug rename writes a supersessions pointer (old→new) unless leave_pointer=false. If new_slug already exists, the call is rejected — use knowledge_merge instead. (2) Batch by slug list: provide slugs array + new_domain to re-home multiple pages atomically. (3) Batch by domain prefix: provide from_domain_prefix + to_domain_prefix to re-home a whole subtree in one transaction.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| slug | No | Current slug of the page to move (single-page mode) | |
| slugs | No | Batch mode: list of slugs to re-domain. Requires new_domain. Atomic — rolls back on any missing slug. | |
| new_slug | No | New slug (re-slug). Collision with an existing page is rejected — use knowledge_merge instead. | |
| new_domain | No | New domain for the page (single-page re-domain or shared target for batch-by-slugs mode) | |
| leave_pointer | No | Write a supersessions pointer old_slug→new_slug when the slug changes. Default true. | |
| to_domain_prefix | No | Batch prefix mode: replacement domain prefix (e.g. "instruments/elektron"). | |
| from_domain_prefix | No | Batch prefix mode: domain prefix to replace (e.g. "gear/elektron"). Requires to_domain_prefix. |