Ir al contenido

Tipos de sincronización

Cada destino de tu configuración agentsync.toml —cada entrada bajo [agents.<name>.targets.*]— tiene un tipo de sincronización. Este tipo define cómo AgentSync convierte una fuente en enlaces simbólicos administrados en los destinos.

Tipo de sincronización Qué hace Cuándo conviene usarlo
symlink Crea un enlace simbólico directo desde el destino hasta la fuente (un archivo o un directorio completo). El caso habitual: CLAUDE.md, .claude/skills/.
symlink-contents Crea un enlace simbólico por cada elemento elegible dentro de un directorio fuente. Directorios de comandos o skills cuando el destino debe seguir siendo un directorio real.
nested-glob Busca archivos de forma recursiva con un patrón glob y crea un enlace por cada coincidencia usando destinos basados en plantillas. Monorepos con archivos de contexto anidados.
module-map Asocia archivos fuente concretos con directorios de módulos específicos. Distribuir archivos de contexto entre módulos.

Crea un enlace simbólico directo en destination que apunta a source. Si source es un directorio, se enlaza el directorio completo.

[agents.claude.targets.instructions]
source = "AGENTS.md"
destination = "CLAUDE.md"
type = "symlink"

Crea enlaces simbólicos individuales para cada archivo elegible dentro del directorio source y los coloca en el directorio contenedor destination. El destino sigue siendo un directorio real.

[agents.claude.targets.commands]
source = "commands"
destination = ".claude/commands"
type = "symlink-contents"

Puedes filtrar los elementos que se enlazan con un patrón glob:

[agents.claude.targets.commands]
source = "commands"
destination = ".claude/commands"
type = "symlink-contents"
pattern = "*.md"

Busca archivos de forma recursiva desde source y crea un enlace simbólico por cada coincidencia. Usa una plantilla de destino para conservar la estructura de directorios:

[agents.claude.targets.nested_instructions]
source = "."
pattern = "**/AGENTS.md"
destination = "{relative_path}/CLAUDE.md"
type = "nested-glob"
exclude = [".agents/**", "**/node_modules/**", "**/.git/**"]

La plantilla admite {relative_path}, {file_name}, {stem} y {ext}. Consulta la guía de recetas de configuración para ver el flujo de revisión y aplicación. AgentSync decide qué fuentes encuentra y dónde crea enlaces; el tipo de sincronización no determina cómo cada asistente descubre o combina archivos de instrucciones.

Asocia fuentes específicas con directorios de módulos. Cada asociación puede elegir el nombre de archivo de destino mediante la convención correspondiente:

[agents.claude.targets.modules]
source = "."
destination = "."
type = "module-map"
[[agents.claude.targets.modules.mappings]]
source = "context/frontend.md"
destination = "frontend"

Usa module-map cuando la asociación entre fuente y módulo deba estar declarada de forma explícita y revisable. Consulta la referencia de configuración para conocer los campos y convenciones admitidos.