diff --git a/.github/workflows/skill-drift.yml b/.github/workflows/skill-drift.yml index 887ce515c..973816d5f 100644 --- a/.github/workflows/skill-drift.yml +++ b/.github/workflows/skill-drift.yml @@ -23,7 +23,9 @@ on: - 'internal/hooks/**' - 'internal/mcp/**' - 'cmd/gortex/**' + - 'Makefile' - '.github/workflows/skill-drift.yml' + - '.github/workflows/publish-claude-plugin.yml' workflow_dispatch: jobs: @@ -44,3 +46,9 @@ jobs: - name: All-platform render structural check run: ./gortex agents render --check + + # publish-claude-plugin runs this target on every release, and nothing + # else exercises it, so a build change that breaks it would only show + # when a release tries to publish. + - name: Claude Code plugin bundle + run: make claude-plugin diff --git a/Makefile b/Makefile index c6fcd82eb..c726edb6e 100644 --- a/Makefile +++ b/Makefile @@ -158,9 +158,13 @@ build-windows: # no diff against what's checked in — drift means the bundle is stale # vs the source-of-truth content in # internal/agents/commands_bodies.go. -claude-plugin: build +# +# The emitter needs none of the optional backends, so it is built without +# `build`'s llama tag: the publish runner has no llama.cpp to link against. +# `go run` also leaves a locally built ./gortex untouched. +claude-plugin: rm -rf ./claude-plugin - ./$(BINARY) plugin emit --target ./claude-plugin --variant anthropic + go run -ldflags '$(LDFLAGS)' ./cmd/gortex/ plugin emit --target ./claude-plugin --variant anthropic @echo "✓ Regenerated claude-plugin/ from internal/agents commands" claude-plugin-check: claude-plugin