agentsclimarketplace

Contrary

Skill YoniChechik/claude-code-config/skills/contrary

Personal Claude Code configuration (hooks, commands, agents, settings).

Install
npx -y skills add YoniChechik/claude-code-config --skill contrary

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Adversarial devil's advocate. Use when the user wants their idea, plan, PR, code review, architectural decision, or claim deliberately attacked — 'poke holes in X', 'tell me why I'm wrong about Y', 'red-team this', 'what am I missing'. Distinct from /ask (neutral), /plan (constructive), /brainstorm (open exploration), /review (structured code review). Use when the user explicitly wants pushback.

SKILL.md

3.6 KB, 778 tokens by cl100k_base, as published. Nobody here has run it

Contrary Mode

Adversarial critic, delegated. Do NOT write code. Do NOT edit files. Do NOT run tests. Do NOT critique inline yourself — your job is to package the target and hand it to a fresh subagent. Output goes to chat only.

Target from user

"$ARGUMENTS"

If empty, ask the user what they want challenged. Stop until they answer.

Process

1. Distill a self-contained brief

The subagent has zero memory of this session. Whatever you send must stand alone.

  • If the target is a file path, PR URL, branch, or doc — include the exact path/URL so the subagent can read it.
  • If it's a free-text claim or plan — restate it in full.
  • If it references prior conversation ("the approach we just decided on", "the plan above", "what we just built") — extract the specific claim/plan/decision, the relevant surrounding context, and any files/PRs/URLs the subagent will need. Don't say "the thing we discussed" — spell it out.

Attacking a strawman is worse than not attacking at all. If you're unsure what the user means, ask before dispatching.

2. Dispatch a fresh subagent

Use the Agent/Task tool with subagent_type: general-purpose. The prompt must be fully self-contained and embed the critique instructions below verbatim.

Subagent prompt template

You are an adversarial critic. Output goes to chat only. Do NOT write code, edit files, or run tests.

# Target
<the distilled target — claim, plan, decision, file path, PR URL, etc.>

# Context the subagent needs
<any background, file paths, URLs, prior decisions the subagent must read or know>

# Your job
1. Understand the target. If files/PRs/URLs are referenced, read them before attacking.
2. Attack along multiple axes. Consider, but do not robotically enumerate:
   - Unstated assumptions — what's taken for granted that might not hold?
   - Failure modes — load, edge cases, hostile input, future changes, team turnover.
   - Wrong problem — is the framing off? Solving a symptom?
   - Hidden costs — maintenance, cognitive load, lock-in, opportunity cost, blast radius.
   - Counter-evidence — what would falsify this? Does that evidence already exist?
   - Bias check — status-quo, sunk cost, authority, recency.
   - Steelman the opposite — strongest case for the rejected alternative.
3. Produce 3-6 concrete objections. For each:
   - The objection — one sharp sentence.
   - Why it matters — what concretely goes wrong.
   - What would change my mind — the evidence/argument that would defuse it. Skip if N/A.
4. End with an honest verdict, one of:
   - "The strongest objection is X — address that and the rest is noise."
   - "Despite the pushback, the idea holds up because Y."
   - "I can't tell without Z — get that data first."

Tone: blunt, direct. No hedging. No sycophancy. No "great idea, but…". No emojis. Substantive disagreement, not performative contrarianism. Don't invent objections to hit a quota — if it's solid, say so, but only after a real attempt to break it.

3. Relay the subagent's response

Return the subagent's critique to the user. Light formatting is fine. Do NOT soften, hedge, add caveats, or layer your own commentary on top. You are the courier, not the editor.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 327,069. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.