Adversarial Spec

Forbedre en PRD eller teknisk spesifikasjon ved å debattere den på tvers av flere LLM-er til de er enige

av zscole · zscole/adversarial-spec

Krever oppsett ★ 7.6/10

Adversarial Spec — Forbedre en PRD eller teknisk spesifikasjon ved å debattere den på tvers av flere LLM-er til de er enige

Hva den gjør

Driver en iterativ "kontradiktorisk" gjennomgang av en produkt- eller teknisk spesifikasjon: Claude utarbeider dokumentet, deretter sender en Python CLI (debate.py) det parallelt til eksterne LLM-leverandører (GPT, Gemini, Grok, Mistral, etc.) for kritikk, og spesifikasjonen revideres runde for runde til hver modell pluss Claude er enige. Utløses når brukeren ønsker å skrive eller forbedre en PRD eller teknisk spesifikasjon gjennom multi-modell debatt. Krever litellm og minst én leverandør API-nøkkel (eller codex/gemini CLI) for å kjøre det faktiske kritikktrinnet.

Testrapport

Fant SKILL.md på skills/adversarial-spec/SKILL.md via GitHub API. Frontmatter parses med name+description; punktvis sjekket debate.py, models.py, providers.py, prompts.py alle returnerer HTTP 200. Klonet til en midlertidig HOME ($(mktemp -d)) og installert i ~/.claude/skills; kjørte `debate.py providers` og `debate.py focus-areas` uten litellm installert og begge skrev ut korrekt hjelpeutdata rent. Kunne IKKE utføre kjernetrinnet 3 (`debate.py critique`) fordi det krever litellm pluss en ekstern leverandør API-nøkkel (OpenAI/Gemini/xAI/etc.) eller codex/gemini CLI, ingen av disse har jeg — så ingen ferdighet-vs-grunnlinje artefakt kunne produseres (outputMeasured=false). Sikkerhetsskanning ren: subprocess-kall i models.py er argumentliste-invokasjoner av codex/gemini CLI-ene (ingen shell=True/injeksjon), Telegram er opt-in via urllib til api.telegram.org; ingen curl|sh, base64-blobs, eller eksfiltrering. Mindre dokumentasjonsanmerkning: SKILL.md feilmerker claude-sonnet-4/opus-4 modell-ID-er som "Claude 3.5 Sonnet v2"/"Claude 3 Opus".

Testet på: 2026-07-21 · Claude Code 2.x (agent harness)

Installer

git clone --depth 1 https://github.com/zscole/adversarial-spec.git /tmp/adversarial-spec-src
mkdir -p ~/.claude/skills
cp -R /tmp/adversarial-spec-src/skills/adversarial-spec ~/.claude/skills/adversarial-spec
# Core debate step needs litellm plus at least one provider API key:
#   pip install litellm==1.80.13
#   export OPENAI_API_KEY=...   (or GEMINI_API_KEY / XAI_API_KEY / ANTHROPIC_API_KEY / etc.)
# Alternatively install a CLI provider: npm i -g @openai/codex && codex login
#   or: npm i -g @google/gemini-cli && gemini auth
# Verify which keys are seen:
#   python3 "$(find ~/.claude -name debate.py -path '*adversarial-spec*' | head -1)" providers
# Plugin-marketplace alternative: repo ships .claude-plugin/marketplace.json + plugin.json

Kommandoer og eksempelprompter

  • /adversarial-specForbedre en PRD eller teknisk spesifikasjon ved å debattere den på tvers av flere LLM-er til de er enige

Skills utløses av vanlige forespørsler — ingen kommandoer å huske. Etter installasjonen aktiverer prompter som disse skillen (på engelsk):

  • Refine this spec by debating it across GPT and Gemini
  • Have multiple models critique this specification
  • Iterate this spec until all models agree