cargo agents sync
Scans workspace dependencies, installs applicable skills into agent directories, and cleans up stale skills.
Flow
-
Find workspace root — run
cargo metadatato locate the workspace manifest directory. -
Load plugin sources — read the user config’s
[[plugin-source]]entries and load their plugin manifests. For git sources, fetch/update as needed. -
Scan dependencies — read the full dependency graph from the workspace.
-
Match skills to dependencies — for each plugin, evaluate skill group crate predicates and individual skill
cratesfrontmatter against the workspace dependencies. -
Install skills per agent — for each configured agent:
- Copy applicable
SKILL.mdfiles into the agent’s expected skill directory. - Write a
.symposium.tomlmanifest in the agent’s skill directory tracking which skills were installed by symposium. - Remove skills that are in the old manifest but no longer applicable.
- Leave skills not in the manifest (user-managed) untouched.
- Copy applicable
-
Register hooks — ensure global hooks and MCP servers are registered for all configured agents. Unregister hooks for agents no longer in the config.
Skill manifest
Each agent’s skill directory contains a .symposium.toml file tracking what symposium installed:
installed = [
"serde-guidance",
"tokio-guidance",
]
This allows symposium to clean up stale skills without touching user-managed skill files.
Auto-sync
When auto-sync = true is set in the user config, the hook handler runs sync automatically during agent sessions. This keeps skills in sync as dependencies change.