⏳ This skill is pending AI review.
Scores will appear once the review pipeline completes.
contrarian
Use when stress-testing a proposal, plan, architecture or decision before committing to it, such as pre-mortems, assumption audits, "should we even do this?" questions, or when everyone agrees too easily. Not for code review; it challenges strategy, approach and hidden risks.
Choose how to use this skill
You do not need every option. Choose the path your AI client supports. The stable page stays the same; versioned files are immutable.
1. Native installer
This listing has no registered native installer command. Use the complete package or source fallback below, depending on what your client supports.
Do not guess an installer command or replace an existing version without reviewing the diff.
2. Complete package recommended
Download the ZIP when available. It includes SKILL.md plus the references, security notes and version metadata.
No complete ProSkills package is published for this listing yet.3. Prompt-only
Copy the prompt above when the agent can read the stable page or when you want to adopt the workflow without installing a skill.
Need only the instruction file?
Download SKILL.md only if your client requires a single file. The complete ZIP is safer for a full installation because it preserves the references and release context.
No path installs or executes anything by itself. Your agent still needs access to the project files. Before updating, compare the installed version and review the diff.
// RATINGS
// README
When everyone agrees on a plan, your coding agent agrees too. Contrarian's job is to assume the consensus is wrong and find out what that world looks like. It steel-mans the proposal first, audits the unstated assumptions, runs a pre-mortem, and checks each objection before it calls it serious.
Use it for pre-mortems, architecture reviews, decision validation, or "should we even do this?" questions. It also works on plans that have nothing to do with code. It isn't a code reviewer: it challenges strategy, approach, and hidden risks.
It ships two ways. Claude Code gets a contrarian subagent and a contrarian skill. Every other harness gets the skill, which tells the agent to run the analysis in a fresh subagent when it can. It installs in Claude Code, Claude Desktop and claude.ai, Codex, Antigravity CLI, Cursor, Devin CLI, Factory Droid, Gemini CLI, GitHub Copilot CLI, Grok Build CLI, Hermes Agent, Kimi Code, OpenCode, Pi, Qwen Code, Muse, and Muse Code.
Install
claude plugin marketplace add aaddrick/contrarian
claude plugin install contrarian@contrarian
This adds the contrarian:contrarian subagent and the contrarian:contrarian skill. Ask Claude to "run the contrarian agent on this plan", or load the skill by hand:
/contrarian:contrarian
To skip the plugin and keep only the subagent, copy the agent file into your user or project agents folder:
curl -fsSL --create-dirs -o ~/.claude/agents/contrarian.md https://raw.githubusercontent.com/aaddrick/contrarian/main/.claude/agents/contrarian.md
Step 1. Open Customize > Plugins, select Add, then Add marketplace.
Step 2. Choose Add from a repository.
Step 3. Enter aaddrick/contrarian. Leave Sync automatically on so the plugin updates when this repository does. Then select Sync.
Step 4. Select Add next to Contrarian.
Step 5. Claude confirms the plugin is installed. It also appears in the desktop app and Cowork on the same account.
Add the marketplace and install the plugin:
codex plugin marketplace add aaddrick/contrarian
codex plugin add contrarian@contrarian
Check that it installed:
codex plugin list
The Codex app reads the same Codex config, so the plugin shows up there too. Open Plugins in the sidebar to see it.
Start a new thread. Codex loads the skill when the task matches. To load it by hand, type:
$contrarian:contrarian
agy plugin install https://github.com/aaddrick/contrarian
Check that it installed:
agy plugin list
Start a new session. Antigravity CLI loads the skill when the task matches. To load it by hand, type:
/contrarian:contrarian
Coming from Gemini CLI? If agy plugin import gemini brought this extension over, run the install command above anyway so the current copy replaces the imported one.
In Cursor Agent chat, type:
/add-plugin https://github.com/aaddrick/contrarian
Or open Customize, import a plugin From GitHub Repository, and enter https://github.com/aaddrick/contrarian. Then select Install next to Contrarian and choose project or user scope.
A plugin added from a GitHub URL can get stuck on an old commit. For dependable updates, clone the repository into Cursor's local plugin folder instead:
git clone https://github.com/aaddrick/contrarian.git ~/.cursor/plugins/local/contrarian
Then run Developer: Reload Window. Clone into that folder, don't symlink to it: Cursor skips symlinks that point outside it. To update, run git pull there and reload again.
Check that it installed: open Customize, then Skills. contrarian appears under Agent Decides.
Cursor loads the skill when the task matches. To load it by hand, type:
/contrarian
Devin needs a signed-in account to manage plugins. If you are not signed in yet, run devin auth login first.
devin plugins install aaddrick/contrarian
Check that it installed:
devin plugins info contrarian
Start a new session. Devin loads the skill when the task matches. To load it by hand, type:
/contrarian:contrarian
To update it later:
devin plugins update contrarian
droid plugin marketplace add https://github.com/aaddrick/contrarian
droid plugin install contrarian@contrarian
Check that it installed:
droid plugin list
In a Droid session, run /skills and open the Plugins tab to see the skill. Droid loads it when the task matches. To load it by hand, type /contrarian at the start of a prompt.
To update it later:
droid plugin marketplace update contrarian
droid plugin update contrarian@contrarian
gemini extensions install https://github.com/aaddrick/contrarian
Check that it installed:
gemini extensions list
The output lists contrarian under Agent skills. Start a new session. Gemini CLI loads the skill when the task matches and asks you to approve it first. To load it by hand, ask Gemini to use the contrarian skill.
To update it later:
gemini extensions update contrarian
copilot plugin marketplace add aaddrick/contrarian
copilot plugin install contrarian@contrarian
Check that it installed:
copilot skill list
contrarian shows under "Plugin skills". Copilot loads it when the task matches. To load it by hand, ask Copilot to use the contrarian skill.
grok plugin install aaddrick/contrarian --trust
Check that it installed:
grok inspect
contrarian appears under Skills. Start a new session. Grok loads the skill when the task matches. To load it by hand, type:
/contrarian
hermes skills install aaddrick/contrarian/skills/contrarian
Check that it installed:
hermes skills list
Start a new session. Hermes loads the skill when the task matches. To load it by hand, type:
/contrarian
You can install it as a plugin instead, with hermes plugins install aaddrick/contrarian --enable. A plugin skill does not load on its own, though: you have to ask Hermes to load the contrarian skill each time. The skills install route above does not have t
// HOW IT'S BUILT
KEY FILES