Copy or synchronize types, templates and properties across vaults

WHAT DO YOU RECOMMEND?

Anytype should allow users to copy or synchronize Object Types, Templates, and Properties across different Vaults or Spaces.

At minimum, users should be able to select an Object Type and copy its complete structure to another Vault. Ideally, users should also be able to keep selected Types, Templates, and Properties synchronized across multiple Vaults.

HOW COULD IT BE DONE?

Minimum implementation — copy:

  • Add a “Copy to Vault/Space” action for Object Types, Templates, and Properties.

  • Copy the complete structure, including:

    • Object Type settings

    • Properties and their configurations

    • Templates and layouts

    • Property order and visibility

    • Select and multi-select options

    • Default values

    • Icons and appearance

  • Let the user choose whether related Types and Properties should also be copied.

  • Detect existing items and offer to reuse, update, duplicate, or skip them.

  • Show a preview of everything that will be copied before confirming.

Optimal implementation — synchronization:

  • Allow a Type, Template, or Property to be designated as shared across selected Vaults.

  • Changes to the shared definition should propagate automatically or after confirmation.

  • Let users choose between one-way synchronization and two-way synchronization.

  • Clearly indicate which items are local and which are synchronized.

  • Provide a change preview and version history.

  • Allow synchronization to be disconnected without deleting the local copy.

  • Respect the permissions and encryption boundaries of every Vault.

Items should use stable internal identifiers so that renamed Types or Properties are still recognized as the same shared definition.

REAL WORLD USE CASES

Users often maintain separate Vaults or Spaces for personal notes, work, clients, teams, or different projects while relying on the same underlying structures.

For example, a user may have a carefully designed “Project” Type with Templates and Properties such as:

  • Status

  • Priority

  • Start and due date

  • Responsible person

  • Related tasks

  • Client

  • Project category

When creating another Vault, the user currently has to rebuild this structure manually. This is time-consuming and can easily produce inconsistent property names, options, templates, and layouts.

Another example is a consultant who creates a separate Vault for every client. The consultant may want to use the same Task, Meeting, Contact, Project, and Decision structures everywhere while keeping each client’s actual data isolated.

Copying would make initial setup much faster. Optional synchronization would ensure that improvements to a common structure can be distributed across all relevant Vaults without recreating the changes manually.

RECOMMENDED ALTERNATIVES

The current workaround is to recreate Types, Properties, and Templates manually in every Vault. This becomes difficult to maintain as the number of Vaults grows.

Users can also export and import data, but this is too broad for transferring an individual structure and may create duplicates or unwanted objects.

Templates from the Experience Gallery can help with initial setup, but they do not provide a direct way to maintain a user’s own evolving structures across existing Vaults.

ADDITIONAL CONTEXT

Copying and synchronization should concern the schema and configuration, not the actual objects or their content, unless the user explicitly chooses to include them.

Anytype should preserve Vault isolation by default. Synchronizing a Type or Template must not expose objects, values, membership information, or other private data from one Vault to another.

A useful first version would only need a reliable “Copy Type with its Templates and Properties to another Vault” action. Live or confirmation-based synchronization could be added later as an advanced feature.