Add multi-platform export generator (single source of truth)
Make the library multi-platform without duplicating content. Each skills/<name>/SKILL.md body remains the single source of truth; a new generator renders platform-ready exports from it. - scripts/build-exports.mjs — dependency-free Node generator with a PLATFORMS registry so new platforms (Gemini, Cursor, …) are a few lines. Ships ChatGPT exports at exports/chatgpt/<bundle>/<skill>/SYSTEM_PROMPT.md (172 skills), plus generated index READMEs. Supports --platform and --check. - exports/ — generated ChatGPT system prompts, ready to paste into a Custom GPT. - .github/workflows/check-generated.yml — fails a PR if exports or web/skills.json drift from the source skills. - README "Works With" now documents the ready-to-use exports and regen command. - CHANGELOG + SKILL-AUTHORING-STANDARD note the generated artifacts. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016JWn5jRD5tcEFKrubjQ6Px
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
name: Check generated artifacts
|
||||
|
||||
# Skills are the single source of truth. The web index (web/skills.json) and the
|
||||
# multi-platform exports (exports/) are generated from skills/*/SKILL.md. This
|
||||
# job fails if either is out of date, so a skill edit can't ship without its
|
||||
# regenerated artifacts.
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- 'skills/**'
|
||||
- 'plugins/**'
|
||||
- 'web/build-skills.mjs'
|
||||
- 'scripts/build-exports.mjs'
|
||||
- 'exports/**'
|
||||
- 'web/skills.json'
|
||||
push:
|
||||
branches: [main]
|
||||
paths:
|
||||
- 'skills/**'
|
||||
- 'scripts/build-exports.mjs'
|
||||
- 'exports/**'
|
||||
|
||||
jobs:
|
||||
check:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Node
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: '20'
|
||||
|
||||
- name: Verify multi-platform exports are up to date
|
||||
run: node scripts/build-exports.mjs --check
|
||||
|
||||
- name: Verify web/skills.json is up to date
|
||||
run: |
|
||||
node web/build-skills.mjs
|
||||
git diff --exit-code -- web/skills.json \
|
||||
|| (echo "::error::web/skills.json is stale — run 'node web/build-skills.mjs' and commit." && exit 1)
|
||||
Reference in New Issue
Block a user