Skip to content

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

Merged
shunkakinoki merged 1 commit into
mainfrom
fix/sync-skills-copy-dependency
Jan 11, 2026
Merged

fix(makefile): add skills-copy dependency to sync target#44
shunkakinoki merged 1 commit into
mainfrom
fix/sync-skills-copy-dependency

Conversation

@shunkakinoki

@shunkakinoki shunkakinoki commented Jan 11, 2026

Copy link
Copy Markdown
Owner

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.

Written for commit 38f5cbf. Summary will update on new commits.

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

This resulted in destination skill files (e.g., ~/.codex/skills/) not
reflecting the latest changes even after running make sync.

Fix: Add skills-copy as a dependency to ensure the two-stage sync
process works correctly:
1. skills-copy: skills/ → .ruler/skills/ (source to intermediate)
2. skills-sync: .ruler/skills/ → destinations (intermediate to agents)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings January 11, 2026 20:23
@coderabbitai

coderabbitai Bot commented Jan 11, 2026

Copy link
Copy Markdown

Caution

Review failed

The pull request is closed.

📝 Walkthrough

Summary by CodeRabbit

  • Chores
    • Added metadata configuration to skill definitions for improved tooling support and workflow integration
    • Optimized build synchronization process to ensure proper skill deployment

✏️ Tip: You can customize this high-level summary in your review settings.

Walkthrough

This PR adds YAML front matter metadata to six skill definition files, declaring name, allowed-tools, and description fields for each skill. Additionally, the Makefile is updated to add a skills-copy dependency to the sync target.

Changes

Cohort / File(s) Summary
Skill Metadata Headers
.ruler/skills/changesets/SKILL.md, .ruler/skills/commit-lint/SKILL.md, .ruler/skills/issue-create/SKILL.md, .ruler/skills/pr-create/SKILL.md, .ruler/skills/pr-label/SKILL.md, .ruler/skills/serena/SKILL.md
Added YAML front matter with name, allowed-tools, and description fields to document skill metadata and capabilities. No runtime behavior changes.
Build System Configuration
Makefile
Added skills-copy as a dependency to the sync target, ensuring skills are copied before downstream sync operations execute.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Poem

🐰 Six skills now wear their metadata crown,
With names and tools clearly written down,
The Makefile flows with newfound grace,
A skills-copy step finds its proper place!

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch fix/sync-skills-copy-dependency

📜 Recent review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between dbb53ff and 38f5cbf.

📒 Files selected for processing (7)
  • .ruler/skills/changesets/SKILL.md
  • .ruler/skills/commit-lint/SKILL.md
  • .ruler/skills/issue-create/SKILL.md
  • .ruler/skills/pr-create/SKILL.md
  • .ruler/skills/pr-label/SKILL.md
  • .ruler/skills/serena/SKILL.md
  • Makefile

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@shunkakinoki
shunkakinoki merged commit 4dcc5f0 into main Jan 11, 2026
7 of 8 checks passed
@shunkakinoki
shunkakinoki deleted the fix/sync-skills-copy-dependency branch January 11, 2026 20:23

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR fixes a synchronization issue in the Makefile where the sync target wasn't updating skill files to their latest versions. The fix adds skills-copy as a dependency to ensure the two-stage sync process (source → intermediate → destinations) runs completely when make sync is invoked.

Changes:

  • Added skills-copy dependency to the sync target in Makefile to ensure intermediate .ruler/skills/ directory is updated from source before syncing to destinations
  • Updated all .ruler/skills/*/SKILL.md files with the name field that matches their directory names (result of running the fixed sync)

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated no comments.

Show a summary per file
File Description
Makefile Added skills-copy as a prerequisite dependency to sync target to fix stale file propagation
.ruler/skills/serena/SKILL.md Added name: serena field to frontmatter metadata
.ruler/skills/pr-label/SKILL.md Added name: pr-label field to frontmatter metadata
.ruler/skills/pr-create/SKILL.md Added name: pr-create field to frontmatter metadata
.ruler/skills/issue-create/SKILL.md Added name: issue-create field to frontmatter metadata
.ruler/skills/commit-lint/SKILL.md Added name: commit-lint field to frontmatter metadata
.ruler/skills/changesets/SKILL.md Added name: changesets field to frontmatter metadata

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 7 files

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants