Skip to content

Improve skills-sync automation and block manual edits#427

Merged
johno-stripe merged 3 commits into
mainfrom
johno/more-robust-skill-sync
May 20, 2026
Merged

Improve skills-sync automation and block manual edits#427
johno-stripe merged 3 commits into
mainfrom
johno/more-robust-skill-sync

Conversation

@johno-stripe
Copy link
Copy Markdown
Contributor

Summary

  • Moved skills/sync.js to scripts/sync.js and updated it to clean target directories before syncing, so
    renamed/deleted skills on the source don't leave stale files behind.
  • Deleted scripts/sync-skills.sh (manual copy script, no longer needed).
  • Added guard-skills.yml workflow that leaves a request-changes review on any PR that touches synced skill
    directories, with messaging tailored for internal vs. external contributors.
  • Removed the skills-sync-check CI job from main.yml (redundant now that the sync is authoritative and manual
    edits are blocked).
  • Updated git add in the sync workflow to use :(glob)**/skills/ so new/deleted files are staged and future
    providers are picked up automatically.
  • Updated READMEs and CODEOWNERS to reflect the new process.

Test plan

  • Trigger sync-skills.yml via workflow_dispatch and confirm it syncs cleanly
  • Open a test PR that touches skills/ and verify the guard workflow leaves a request-changes review

…iles, generally cleared out code that only made sense when skills were manually edited in this repo
github-actions[bot]

This comment was marked as outdated.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Committed-By-Agent: claude
Copy link
Copy Markdown
Contributor

@stripe-ai-sync stripe-ai-sync Bot left a comment

Choose a reason for hiding this comment

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

This PR modifies files that are automatically synced from a centrally maintained copy at docs.stripe.com/.well-known/skills. Any changes made here will be overwritten by the next sync.

To make lasting changes, apply them to the source. You can find instructions at go/add-stripe-skill.

Comment thread .github/workflows/guard-skills.yml Dismissed
Copy link
Copy Markdown
Contributor

@matv-stripe matv-stripe left a comment

Choose a reason for hiding this comment

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

ty for the cleanup! quick question

Comment on lines -42 to -52
- name: Verify provider skill directories match source
run: |
out_of_sync=false

for provider in claude cursor; do
target="providers/$provider/plugin/skills"

for skill_dir in skills/*/; do
skill_name="$(basename "$skill_dir")"
diff -r "skills/$skill_name" "$target/$skill_name" > /dev/null 2>&1 || {
echo "❌ $target/$skill_name is out of sync with skills/$skill_name"
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.

quick question - are we getting rid of this CI test?

Copy link
Copy Markdown
Contributor Author

@johno-stripe johno-stripe May 20, 2026

Choose a reason for hiding this comment

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

Yeah -- it seems like the test was there to pick up when a user changed something in /skills but forgot to sync it with the other provider files. Now that we've got checks in place to ensure that people never directly change files in that directory, and the same logic is being used to write the files into every one of the output directories, it seems unnecessary.

We could technically keep it, but it feels logically dead, so it felt simpler to clean out the last holdover from the previous approach! Happy to bring it back if you think otherwise, though 👍

Copy link
Copy Markdown
Contributor

@stripe-ai-sync stripe-ai-sync Bot left a comment

Choose a reason for hiding this comment

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

This PR modifies files that are automatically synced from a centrally maintained copy at docs.stripe.com/.well-known/skills. Any changes made here will be overwritten by the next sync.

To make lasting changes, apply them to the source. You can find instructions at go/add-stripe-skill.

@johno-stripe johno-stripe merged commit 119545e into main May 20, 2026
9 checks passed
@johno-stripe johno-stripe deleted the johno/more-robust-skill-sync branch May 20, 2026 18:02
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.

3 participants