79da1bfde3
Make the reusable workflow's input defaults BE the standard Gadfly swarm so a consumer subscribes by just calling it (no `with:` block) and inherits: - models: 3 strong cloud (minimax-m3, glm-5.2, deepseek-v4-pro) + Claude Code (sonnet, opus, opus:max) - specialists: the 5-lens default suite (security, correctness, maintainability, performance, error-handling) - provider_concurrency: ollama-cloud=3,claude-code=3 (all three claudes at once) - timeout_minutes default 45 -> 90 (5 lenses x 2 passes over a slow lane) The default is opinionated (needs OLLAMA_CLOUD_API_KEY + CLAUDE_CODE_OAUTH_TOKEN); consumers override `models:` for cloud-only / other providers. gadfly's own caller is slimmed to inherit (only allowed_users remains). examples/reusable.yml keeps a cloud-only `models:` override so a public copy works with just the Ollama key. README/CLAUDE.md updated. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Example consumer workflows
Each file here is a complete, copy-paste stub workflow. Pick the one that matches your
setup, copy it to .gitea/workflows/adversarial-review.yml in the repo you want reviewed, and
set the secrets/vars it references. Gadfly is advisory only — it never blocks a merge.
| File | Backend | Needs |
|---|---|---|
reusable.yml |
slimmest stub — calls Gadfly's reusable workflow, forwarding only the secrets the reviewer needs (least privilege, not secrets: inherit); take the defaults or override a few inputs |
secret OLLAMA_CLOUD_API_KEY |
adversarial-review.yml |
Ollama Cloud (default) + inline notes for every provider; full self-contained stub | secret OLLAMA_CLOUD_API_KEY |
local-ollama.yml |
a local/LAN Ollama daemon | nothing (or GADFLY_BASE_URL for a remote host) |
openai-compatible.yml |
any OpenAI-compatible endpoint (local Ollama /v1, gateway, vLLM, OpenRouter…) |
GADFLY_BASE_URL (+ a key for most gateways) |
endpoint-aliases.yml |
several named backends at once (one comment each) | repo vars GADFLY_ENDPOINT_<NAME> |
claude-code.yml |
the bundled Claude Code CLI engine (claude-code/<model>) |
secret CLAUDE_CODE_OAUTH_TOKEN (or ANTHROPIC_API_KEY) |
.gadfly.yml |
per-repo specialist config (not a workflow — goes at your repo root) | — |
Common to all:
- Triggers: new/reopened/ready non-draft PR (auto),
@gadfly reviewcomment (allowed users), or manualworkflow_dispatchwith apr_number. GITEA_TOKENis provided automatically; comments post asgitea-actions.- Tested backends are the Ollama ones; OpenAI/Anthropic/Google are wired via majordomo but untested. See the repo README for the full config reference and the honest tested/untested status.
Gitea note: repo
vars/secretsare not auto-exposed as env — anything you reference via${{ vars.X }}/${{ secrets.X }}must appear in the step'senv:block (already wired in these examples).