Use when syncing HARNESS.md conventions to Cursor, Copilot, and Windsurf convention files — reads Context and Constraints sections and generates tool-specific output so all AI coding tools share the same project rules
Teams using multiple AI coding tools hit convention drift: HARNESS.md declares the project's conventions and constraints, but Cursor, Copilot, and Windsurf each have their own convention file format. Without sync, those tools operate blind — or worse, with stale copies of rules that were updated in HARNESS.md weeks ago.
This skill reads the Context and Constraints sections of HARNESS.md and generates the corresponding convention files for each supported tool. HARNESS.md is the single source of truth. Sync is one-way only: HARNESS.md drives the other files. No tool-specific file feeds back into HARNESS.md.
| HARNESS.md Section | Target Content |
|---|---|
| Context > Stack | Tool description / context block — languages, build system, test framework |
| Context > Conventions | Convention rules — naming, file structure, error handling, documentation |
| Constraints (each entry) | One rule block per constraint with enforcement level and scope |
Constraint Scope field | Cursor glob pattern (falls back to **/* when Scope is absent) |
Sections outside Context and Constraints (Garbage Collection, Status) are not synced — they are harness-internal and have no equivalent in other tools.
Invoke via the slash command:
/convention-sync
Or ask the agent directly: "Sync my HARNESS.md conventions to Cursor, Copilot, and Windsurf."
The agent will:
Generates two files in .cursor/rules/:
.cursor/rules/conventions.mdcContains the Context section from HARNESS.md. Frontmatter format:
---