fix(makefile): add skills-copy dependency to sync target

Merged
SH
9mo ago
+7-1

Summary

  • Fixed make sync not updating skill files to their latest versions
  • Added skills-copy as a dependency to the sync target in Makefile
  • Updated .ruler/skills files to include the name field that was previously missing

Problem

The sync target was missing the skills-copy dependency, causing it to sync stale intermediate files from .ruler/skills/ to destination directories (like ~/.codex/skills/) without first updating them from the source skills/ directory.

Example:

# User edits: dotagents/skills/pr-label/SKILL.md
# User runs: make sync
# Expected: ~/.codex/skills/pr-label/SKILL.md updates
# Actual: ~/.codex/skills/pr-label/SKILL.md stays stale

Root Cause

The sync process has two stages:

  1. Stage 1 (skills-copy): skills/ → .ruler/skills/ (source to intermediate)
  2. Stage 2 (skills-sync): .ruler/skills/ → destinations (intermediate to agents)

The sync target only called skills-sync (Stage 2) but never skills-copy (Stage 1), so the intermediate .ruler/skills/ directory was never updated.

Solution

 .PHONY: sync
-sync: ## Sync project commands, skills, and MCP configuration to assistant-specific directories.
+sync: skills-copy ## Sync project commands, skills, and MCP configuration to assistant-specific directories.
 	@make commands-sync
 	@make skills-sync
 	@make mcp-sync

This ensures both stages run in the correct order when make sync is called.

Test Plan

  • Run make sync and verify it executes skills-copy first
  • Verify all skill files are synchronized (source, intermediate, and destinations match)
  • Check that destination files (e.g., ~/.codex/skills/pr-label/SKILL.md) now include the name field
  • Confirm file timestamps and sizes match across all locations

Files Changed

  • Makefile: Added skills-copy dependency to sync target
  • .ruler/skills/*.md: Updated with name field from source files (result of running the fixed sync)

šŸ¤– Generated with Claude Code


Summary by cubic

Fixes make sync so it refreshes skills from source before syncing to destinations, preventing stale files. Adds the skills-copy dependency and updates .ruler/skills with the missing name field.

  • Bug Fixes
    • Added skills-copy as a dependency of sync to run the two-stage copy/sync in order.
    • Updated .ruler/skills/* to include the name field so destinations match source.