Adversarial Spec

Zpřesněte PRD nebo technickou specifikaci debatou napříč více LLM, dokud se neshodnou

od zscole · zscole/adversarial-spec

Funguje s nastavením ★ 7.6/10

Adversarial Spec — Zpřesněte PRD nebo technickou specifikaci debatou napříč více LLM, dokud se neshodnou

Co umí

Řídí iterativní "adversarial" revizi produktové nebo technické specifikace: Claude navrhne dokument, poté Python CLI (debate.py) jej paralelně odešle externím poskytovatelům LLM (GPT, Gemini, Grok, Mistral atd.) k kritice a specifikace je revidována kolo za kolem, dokud se každý model plus Claude neshodnou. Spouští se, když uživatel chce napsat nebo zpřesnit PRD nebo technickou specifikaci prostřednictvím debaty více modelů. Vyžaduje litellm a alespoň jeden API klíč poskytovatele (nebo codex/gemini CLI) pro spuštění skutečného kroku kritiky.

Testovací report

Nalezen SKILL.md na skills/adversarial-spec/SKILL.md přes GitHub API. Frontmatter se parsuje s name+description; namátkově zkontrolovány debate.py, models.py, providers.py, prompts.py všechny vrátily HTTP 200. Klonováno do dočasného HOME ($(mktemp -d)) a nainstalováno do ~/.claude/skills; spuštěny `debate.py providers` a `debate.py focus-areas` bez nainstalovaného litellm a oba vytiskly správný výstup nápovědy čistě. NEBYLO možné spustit hlavní Krok 3 (`debate.py critique`), protože vyžaduje litellm plus externí API klíč poskytovatele (OpenAI/Gemini/xAI/atd.) nebo codex/gemini CLI, z nichž žádný nemám — takže nelze vyprodukovat artefakt skill-vs-baseline (outputMeasured=false). Bezpečnostní sken čistý: volání subprocess v models.py jsou volání CLI codex/gemini se seznamem argumentů (žádné shell=True/injekce), Telegram je opt-in přes urllib na api.telegram.org; žádné curl|sh, base64 bloby nebo exfiltrace. Drobná poznámka k dokumentaci: SKILL.md chybně označuje ID modelů claude-sonnet-4/opus-4 jako "Claude 3.5 Sonnet v2"/"Claude 3 Opus".

Testováno: 2026-07-21 · Claude Code 2.x (agent harness)

Instalace

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

Příkazy a ukázkové prompty

  • /adversarial-specZpřesněte PRD nebo technickou specifikaci debatou napříč více LLM, dokud se neshodnou

Skilly se spouštějí běžnými požadavky — žádné příkazy k zapamatování. Po instalaci ho aktivují prompty jako tyto (anglicky):

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