Skip to content

damionrashford/Adversaria

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Adversaria
Critical thinking platform for Claude Code

Usage · Agents · Skills · How It Works · Traditions · Install


Adversaria is a Claude Code plugin for structured adversarial analysis. Three specialized agents argue, stress-test, and judge any idea using a shared argument graph, 10 reasoning traditions, and persistent memory that accumulates insight across sessions.

The name comes from the Latin adversaria: a notebook of observations. It also evokes adversarial reasoning, the deliberate practice of challenging ideas to strengthen them.

Usage

Adversaria works through agents that Claude automatically delegates to based on what you ask. You don't need to manage the workflow yourself.

Natural language (Claude delegates automatically):

Steelman the case for rewriting our API in Go
What could go wrong with this migration plan?
Give me a verdict on this proposal
Play devil's advocate on this architecture decision

@-mention (guarantees a specific agent runs):

@advocate build the strongest case for microservices here
@adversary tear apart this launch plan
@judge what survives scrutiny in this proposal?

Slash commands (invoke a skill directly):

/adversaria:steelman the case for server-side rendering
/adversaria:crucible this database migration plan
/adversaria:verdict on the Q3 product roadmap
/adversaria:devils-advocate this entire investment thesis

Session-wide (run an entire session as one agent):

claude --agent adversaria:advocate
claude --agent adversaria:adversary
claude --agent adversaria:judge

Agents

Three agents with distinct roles, each with persistent project memory that accumulates knowledge across sessions.

Advocate

Builds the strongest possible case for an idea with genuine conviction, then argues the complete opposite with equal force.

Tradition Steelmanning, Dissoi Logoi
Model Sonnet
Skill adversaria:steelman
Memory Project-scoped, persistent
Triggers "steelman", "make the best case", "argue both sides", "defend this idea"

The advocate is not a summarizer and not a yes-man. A steelman that ignores obvious flaws is a straw man in disguise. The advocate addresses weaknesses by countering them, not hiding them.

Adversary

Finds every weakness, flaw, and failure mode. An authentic dissenter, not assigned devil's advocacy.

Tradition Crucible, Red Team, Socratic Elenchus, Gadfly
Model Sonnet
Skill adversaria:crucible
Memory Project-scoped, persistent
Triggers "stress-test", "poke holes", "red team", "what could go wrong", "what am I missing"

Note

Psychologist Charlan Nemeth proved that assigned devil's advocacy is less effective than authentic dissent and can make people more entrenched. The adversary is an authentic dissenter who genuinely looks for flaws, not a performer going through the motions.

Judge

Renders a dispassionate verdict from the argument graph evidence. No advocacy in either direction.

Tradition Roman Rota (appellate tribunal, est. 1171)
Model Inherit
Skill adversaria:verdict
Memory Project-scoped, persistent
Triggers "verdict", "bottom line", "final assessment", "what survives", "give it to me straight"

The judge reads what the advocate built and what the adversary found, then determines what survives scrutiny, what does not, and what remains unresolved. Every claim in the verdict cites graph state, not opinion.

Skills

Skills are the structured workflows that agents execute internally. They are also available as standalone slash commands.

Skill What It Does Used By
/adversaria:steelman Build the strongest case for and against an idea. Register claims, assumptions, and evidence in the argument graph. advocate
/adversaria:crucible Socratic questioning, structural gap analysis, hostile review, and red team failure modes. Register weaknesses and mitigations. adversary
/adversaria:verdict Name the uncomfortable truth. Determine what survives scrutiny based on graph topology. Export the final verdict. judge
/adversaria:devils-advocate Orchestrate all three phases in sequence for a complete adversarial analysis. all three

Tip

Skills compose through a shared argument graph that persists between runs. The steelman skill builds the graph, the crucible skill adds weaknesses to it, and the verdict skill reads the final state. Use /adversaria:devils-advocate to run all three in one pass.

How It Works

     You ask a question
            │
            ▼
    ┌───────────────┐
    │   Claude Code  │  Delegates based on what you asked
    └───────┬───────┘
            │
    ┌───────┼───────────────────┐
    ▼       ▼                   ▼
┌────────┐ ┌──────────┐ ┌───────────┐
│Advocate│ │Adversary │ │  Judge    │
│        │ │          │ │           │
│Steelman│ │Crucible  │ │Verdict   │
│skill   │ │skill     │ │skill     │
└───┬────┘ └────┬─────┘ └─────┬────┘
    │           │              │
    └───────────┼──────────────┘
                ▼
       ┌────────────────┐
       │ Argument Graph  │
       │                 │
       │ Shared state    │
       │ across all      │
       │ agents + skills │
       └────────────────┘
  1. You describe what you need. Claude reads your request and delegates to the right agent based on its description.
  2. The agent invokes its skill. Each agent has a dedicated skill that defines its structured workflow: what to analyze, what to register in the graph, and what to produce.
  3. Skills read and write the argument graph. The graph is the shared state layer. Claims, assumptions, evidence, weaknesses, counters, and mitigations accumulate across agent runs.
  4. Results return to you. The agent summarizes its findings. The full graph state is available via analyze, verdict, or export commands.

The Argument Graph

The argument graph is a knowledge graph that decomposes ideas into typed nodes connected by typed relations.

Node types: claim assumption evidence weakness counter precedent mitigation

Relation types: supports undermines assumes depends_on contradicts if_fails mitigates

The graph persists in /tmp between agent runs. This is by design: what the advocate builds, the adversary attacks, and the judge reads.

The Thought Chain

The thought chain tracks reasoning as numbered steps with revision and branching. Used by the /adversaria:devils-advocate orchestrator to sequence its seven-step analysis across all three phases.

Traditions

Adversaria draws from 10 intellectual traditions of structured dissent and rigorous argument.

# Tradition Origin
1 Devil's Advocate Catholic canonization (est. 1587). Nemeth's warning: inauthentic dissent backfires.
2 Dissoi Logoi Greek contrasting arguments (~400 BCE). "X can be Y and not-Y."
3 Lawsuits Against the Devil Mayo v. Satan (1971), Chambers v. God (2008). Every argument deserves examination.
4 Crucible Pentagon/NASA stress-test review. The board's goal is to break it on technical merit.
5 Polemic Greek polemikos, "warlike." Constructive polemic exposes genuine errors.
6 Red Team RAND Corporation, 1960s. Israel's Ipcha Mistabra. Three teams reviewed the bin Laden raid intel.
7 Roman Rota Catholic appellate tribunal, records from 1171. Mandatory opposition. Different panel for appeals.
8 Social Gadfly Plato's Apology. "If you kill a man like me, you will injure yourselves more than you will injure me."
9 Socratic Method Elenchus: argument of disproof. "Life without examination is not worth living."
10 Steelmanning Address the strongest form of an argument, not the weakest. Isaac Watts (1724).

Install

From the marketplace

/plugin marketplace add damionrashford/Adversaria
/plugin install adversaria@damionrashford-adversaria

After installing, run /reload-plugins to activate.

Local development

claude --plugin-dir /path/to/Adversaria

Requirements

Plugin Structure

Adversaria/
├── .claude-plugin/
│   ├── plugin.json            # Plugin manifest
│   └── marketplace.json       # Marketplace catalog
├── agents/
│   ├── advocate.md            # Steelman agent
│   ├── adversary.md           # Stress-test agent
│   └── judge.md               # Verdict agent
├── skills/
│   ├── devils-advocate/       # Full analysis orchestrator
│   │   ├── SKILL.md
│   │   └── references/        # All 10 tradition references
│   ├── steelman/              # Build the best case
│   │   ├── SKILL.md
│   │   └── references/
│   ├── crucible/              # Stress-test
│   │   ├── SKILL.md
│   │   └── references/
│   └── verdict/               # Render judgment
│       ├── SKILL.md
│       └── references/
├── scripts/
│   ├── argument-graph.py      # Knowledge graph engine
│   └── thought-chain.py       # Sequential reasoning engine
├── hooks/
│   ├── hooks.json             # Event handlers
│   └── scripts/               # Hook shell scripts
├── README.md
└── LICENSE

License

MIT


Built by Damion Rashford

About

Critical thinking plugin for Claude Code. Three specialized agents (advocate, adversary, judge) argue, stress-test, and judge any idea using a shared argument graph, 10 reasoning traditions, and persistent memory.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors