Skip to main content

Overview

A manifest says which resources belong to a sync target. Targets live in sync-config.yaml; manifests live next to the metadata repository and list resources by slug. Manifests let you split resources by team, customer, business unit, or deployment unit. A target can reference one manifest or many.

Manifest Format

Top-level fields:

Example: Shared Business Process

Example: Project Target

Project resources are used when a specific project owns resources or bindings that should not be shared globally.

Activity-Centered Resource Shape

For new work, model orchestration around Activity Plans: Task templates should stay focused on human work. Activity Plans should own extraction, routing, scripts, Service Bridge calls, LLM steps, agent steps, and approval flow.

Resource Type Reference

Use current names in new manifests. Some compatibility aliases are accepted by the CLI, but the current names below are the ones docs and examples should use.

Module Paths

Modules can be listed in resources.modules or in the top-level modules path list. Use path entries when a module folder includes implementation files:
Inside the module YAML, use current module metadata names:

Push Order

kdx sync pushes in dependency order so references resolve:
  1. Labels
  2. Core organization resources: data definitions, data forms, document stores, data stores, modules, prompts, Service Bridges
  3. Knowledge type definitions
  4. Knowledge feature instances
  5. Intakes and Activity Plans
  6. Project templates and projects
  7. Task templates, task statuses, and knowledge sets
  8. Project resources such as knowledge items and triggers

metadata_dir

metadata_dir controls where resource files are stored:
Common values:

Excluding Resources

Comment out resources that exist on the server but should not be managed by this metadata repository:
Repeat kdx sync pull --discover later to merge newly created server resources. Commented entries are treated as intentional exclusions and are not re-added.