Back to list
bdsqqq

spar

by bdsqqq

11🍴 2📅 Jan 23, 2026

SKILL.md


name: spar description: "adversarial review via spawned antithesis agent. use to prune false positives from EXISTING findings. NOT for discovery or when claim is verifiable against single source."

spar

adversarial debate protocol. spawns an antithesis agent to challenge your findings. catches false positives and surfaces missed issues.

load first: review — provides epistemic standards for both agents. prerequisite skills: spawn, coordinate, report

assumes prerequisite skills are sibling directories (spawn, coordinate, report alongside spar).

when to load

  • reviewing code, designs, or documentation
  • debugging findings that need second opinion
  • any analysis where you'll report findings to others
  • when "first clean" can't be trusted

when NOT to use

before spawning adversarial review, ask:

  1. is there a single source of truth? if claim is verifiable against code/spec, verify it directly instead of debating.
  2. do i already have findings to refine? spar prunes false positives from EXISTING findings. don't spawn courts to generate findings.
  3. will debate add signal or noise? if the answer is in the code, read the code.

spar refines EXISTING findings. it's not a discovery mechanism.

protocol

1. produce initial review with confidence labels (VERIFIED/HUNCH/QUESTION)
2. spawn antithesis agent with challenge instructions
3. iterate thesis/antithesis/synthesis rounds:
   - antithesis: challenge strongest/most confident claim
   - thesis: verify claim, concede or defend with evidence
   - synthesis: update position, identify next target
4. terminate after 2+ consecutive rounds with no position change

spawning antithesis

ANTITHESIS=$(../spawn/scripts/spawn-amp "ANTITHESIS — challenge thesis findings.

your role: refute, challenge, find weaknesses. attack VERIFIED claims first (they claim highest confidence). load the review skill. read the source material independently.

findings to challenge:
<paste findings here>

files to examine:
<file list>

communicate via: tmux send-keys -t <coordinator-pane> 'AGENT \$NAME: <message>' C-m

wait for synthesis before next challenge. take turns.")

communication

use tmux send-keys directly. slash commands are unreliable over tmux.

antithesis → coordinator:

tmux send-keys -t %5 'AGENT $NAME: <challenge or concession>' C-m

coordinator → antithesis:

tmux send-keys -t $ANTITHESIS 'THESIS: <defense or concession>' C-m

synthesis

after each exchange, update your position:

## synthesis round N

**challenged:** <which claim>
**verdict:** UPHELD | REFUTED | MODIFIED
**position update:** <revised finding if modified, or "no change">
**next target:** <which claim antithesis should challenge next, or "none — stable">

termination

stable when 2+ consecutive rounds produce no position changes.

final output:

## spar result

| round | challenged | verdict |
|-------|------------|---------|
| 1 | race condition claim | MODIFIED |
| 2 | auth bypass claim | REFUTED |
| 3 | input validation | UPHELD |
| 4 | (stability check) | no change |
| 5 | (stability check) | no change |

### revised findings
<updated findings with verdicts>

### pruned claims
<claims that were refuted, with reasoning>

meta-auditor phase

dialectic can produce manufactured findings — agents invent problems to appear rigorous.

after spar claims completion, audit for authenticity:

## meta-audit

for each finding from spar:

| finding | trace to source? | would skill fail without? | box-checking risk | verdict |
|---------|-----------------|---------------------------|-------------------|---------|
| add slop example | yes — traces to confident-ai research | yes — epistemic skills show failure modes | LOW | GENUINE |
| rename pattern section | no source | no functional impact | HIGH | MANUFACTURED |

**recommendation:** KEEP genuine findings, REVERT manufactured ones.

spawn a separate meta-auditor agent if context is long:

META=$(../spawn/scripts/spawn-amp "META-AUDITOR — audit spar findings for authenticity.

assume MANUFACTURED until proven. for each finding:
1. does it trace to specific research? (cite source)
2. would the artifact ACTUALLY fail without this change?
3. box-checking risk: LOW/MODERATE/HIGH

verdict: GENUINE or MANUFACTURED
recommendation: KEEP or REVERT

findings to audit:
<paste spar results>")

composition with rounds

spar can be orchestrated by rounds for parallel debates:

rounds (orchestrator)
├── court 1: spar(finding A)
│   ├── thesis agent
│   └── antithesis agent
├── court 2: spar(finding B)
│   ├── thesis agent
│   └── antithesis agent
└── court 3: spar(finding C)
    ├── thesis agent
    └── antithesis agent

→ rounds collects verdicts
→ runs meta-auditor on all verdicts
→ iterates if issues found

interface contract for rounds:

  • input: claim/finding to debate + relevant file paths
  • output: verdict (UPHELD/REFUTED/MODIFIED) + revised finding if modified
  • termination: 2+ synthesis rounds with no position change

pitfalls

  • premature convergence: agents agree too fast to satisfy "2 clean rounds." skepticism is the cure.
  • manufactured issues: antithesis invents challenges to have something to say. meta-auditor catches these.
  • slash commands: unreliable over tmux. use direct send-keys.
  • permission prompts: require arrow keys + enter. ask user to handle manually.

Score

Total Score

50/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon