Sync OpenCode Prompts #47
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Sync OpenCode Prompts | |
| on: | |
| workflow_dispatch: | |
| schedule: | |
| - cron: "0 9 * * *" | |
| permissions: | |
| contents: write | |
| pull-requests: write | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| sync: | |
| name: Sync Upstream Prompt Assets | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| with: | |
| fetch-depth: 0 | |
| - name: Setup Bun | |
| uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2.2.0 | |
| with: | |
| bun-version: 1.3.12 | |
| - name: Sync vendored prompts from upstream | |
| run: bun --cwd packages/opencode-agent-prompt-inheritance run sync:prompts | |
| - name: Detect prompt changes | |
| id: changes | |
| run: | | |
| if git diff --quiet -- packages/opencode-agent-prompt-inheritance/src/prompt; then | |
| echo "changed=false" >> "$GITHUB_OUTPUT" | |
| else | |
| echo "changed=true" >> "$GITHUB_OUTPUT" | |
| fi | |
| - name: Run package verification | |
| if: steps.changes.outputs.changed == 'true' | |
| run: bun install --frozen-lockfile && bun --filter @capybearista/opencode-agent-prompt-inheritance run typecheck && bun --filter @capybearista/opencode-agent-prompt-inheritance run lint && bun --filter @capybearista/opencode-agent-prompt-inheritance run test && bun --filter @capybearista/opencode-agent-prompt-inheritance run build | |
| - name: Run built-artifact smoke tests | |
| if: steps.changes.outputs.changed == 'true' | |
| working-directory: packages/opencode-agent-prompt-inheritance | |
| run: bun test src/artifact.test.ts | |
| - name: Generate changeset for prompt sync | |
| if: steps.changes.outputs.changed == 'true' | |
| run: | | |
| cat > .changeset/opencode-agent-prompt-inheritance-sync.md <<'EOF' | |
| --- | |
| "@capybearista/opencode-agent-prompt-inheritance": patch | |
| --- | |
| Sync vendored provider prompt assets from upstream OpenCode. | |
| EOF | |
| - name: Create Pull Request | |
| if: steps.changes.outputs.changed == 'true' | |
| uses: peter-evans/create-pull-request@e8bb63f3ebc5d897733ff1f261fbf72df4b956b5 # v7.0.8 | |
| with: | |
| commit-message: "chore(agent-prompt-inheritance): sync upstream prompt assets" | |
| title: "chore(agent-prompt-inheritance): sync upstream OpenCode prompts" | |
| body: | | |
| ## Summary | |
| - Sync vendored prompt assets from upstream OpenCode | |
| - Run package verification gates for `@capybearista/opencode-agent-prompt-inheritance` | |
| - Include a release changeset when prompt files changed | |
| branch: chore/sync-opencode-agent-prompts | |
| delete-branch: true |