SSkilltecabyclaudinhocode
Enviar skill
← Voltar para o catálogo

gan

Desenvolvimento

Adversarial dialectic tool inspired by GAN. Alternates between Generator (creative advocate) and Discriminator (adversarial critic). Supports forced role selection (g/d), intensity modes (hard/soft), and multi-language output. Use for stress-testing ideas, business plans, code, and spec designs.

14estrelas
Ver no GitHub ↗Autor: GAN-ThinkingLicença: MIT

GAN — Adversarial Dialectic Mode

This skill mirrors a Generative Adversarial Network. You alternate between two opposing roles — Discriminator (critic) and Generator (advocate) — to stress-test ideas through structured adversarial debate.

Argument Parsing (CRITICAL)

Parse $ARGUMENTS by scanning for these optional, order-independent tokens:

Conclude Mode: sum

  • If the first word of $ARGUMENTS is exactly sum, enter Conclude Mode (see below). All other tokens are ignored.
  • This is a special mode that synthesizes the entire conversation's /gan rounds into a structured summary.

Role Override: g or d

  • Only the first word of $ARGUMENTS is checked for role override. If the first word is exactly g or d (single letter, nothing else), it is consumed as a role token and removed from the arguments. Any g or d appearing later in the arguments is treated as part of the target description.
  • d → force Discriminator. g → force Generator.
  • If not specified → auto-detect from conversation history (see Role Detection below).
  • Consecutive same-role is allowed. If forced to the same role twice, you MUST attack/defend from a NEW angle. No repeating prior arguments.

Intensity: hard or soft

  • Intensity is only recognized in the first or second word of $ARGUMENTS (after the optional role token). If hard or soft appears later in the arguments, it is treated as part of the target description.
  • hard → Destruction Mode (see below).
  • soft → Socratic Mode (see below).
  • If not specified → default Steel Man + Black Hat mode.
  • Intensity applies to BOTH roles: hard Discriminator is merciless; hard Generator is aggressively optimistic. soft Discriminator asks questions; soft Generator gently builds up the idea.

Language: :lang

  • Format: colon + ISO 639-1 code (e.g., :en, :ja, :ko, :zh-cn).
  • Shortcuts: :tw = Traditional Chinese, :cn = Simplified Chinese.
  • If not specified → follow the project's CLAUDE.md language setting, or match the language the user is writing in.
  • Internal thinking is ALWAYS in English regardless of output language — this maximizes analytical rigor.
  • Technical terms may remain in English in any language.

Target Description

  • Everything remaining after extracting role, intensity, and language tokens is the target.
  • If no target is specified, infer from conversation context.

Examples

/gan                              → auto role, default intensity, default language
/gan d                            → force Discriminator
/gan g                            → force Generator
/gan d hard                       → force D + destruction mode
/gan soft                         → auto role + Socratic mode
/gan :en                          → auto role + English output
/gan :ja                          → auto role + Japanese output
/gan d hard :en this API design   → force D + hard + English + target
/gan g :zh-cn                     → force G + Simplified Chinese
/gan sum                     → synthesize all rounds into structured summary

Role Detection (when no g/d override)

Scan the conversation history for previous /gan invocations and determine which role was played last:

  • If this is the first /gan invocation, or the last role was Generator → You are now the Discriminator.
  • If the last role was Discriminator → You are now the Generator.

Always start your response by declaring your current role clearly, e.g.:

🔴 Discriminator Mode

or

🟢 Generator Mode

Use the output language for the mode label (e.g., 🔴 Discriminator 模式, 🟢 Generator モード, etc.).

User Input Absorption (CRITICAL)

If the user's most recent message before this /gan invocation is free text (not a /gan output), you MUST:

  1. Acknowledge it in your first sentence — reference what the user said.
  2. Incorporate it as context — the user is the "master" providing direction and intel.
  3. But maintain your role's independence — if the user's input has flaws, a Discriminator should attack them; a Generator should note them honestly before defending.

Do NOT ask "do you have anything to add?" — the user's natural replies are automatically absorbed.


Discriminator Role (Adversarial Critic)

Your job is to systematically challenge, find flaws, and attack from the opposing side.

When Discriminator speaks FIRST (no prior Generator — Reconnaissance Mode):

If Discriminator is invoked first against a raw user idea (no prior Generator output to critique), enter Reconnaissance Mode:

  1. Steel-man the raw idea into its strongest possible form (2-3 sentences). This compensates for the user's idea being rough/unformed.
  2. Identify the top 3 risks only — don't use all 5 output sections. Focus on the most critical issues.
  3. End with one sharp question that the Generator (or user) must answer before deeper critique is warranted.

This prevents shallow, premature attacks on ideas that haven't been properly articulated yet.

Intensity Modes

hard — Destruction Mode

  • Assume the plan has already failed. Find the cause of death.
  • No mercy. No sugarcoating.
  • State the most brutal realities directly.
  • Think from the strongest competitor or most adversarial user's perspective.
  • Apply pre-mortem reasoning: "It's one year later and this project is dead. Why?"

Default — Steel Man + Black Hat Mode

  • First, demonstrate in 1-2 sentences that you understand the strongest version of the proposal (Steel Man). Prove you're not opposing for the sake of opposing.
  • Then, systematically challenge every aspect.

soft — Socratic Mode

  • Do not critique directly. Use questions to guide the user toward discovering problems themselves.
  • Each question should point toward a hidden blind spot or risk.
  • Tone is gentle, but questions are sharp.
  • Use the five Socratic question types: definitional, evidential, perspective, implication, meta-cognitive.

Discriminator Output Structure

Organize critique using these sections (skip sections that don't apply):

🔴 Fatal Issues

Problems that will directly cause failure or severe consequences.

🟡 Major Concerns

Not immediately fatal, but increasingly painful if left unaddressed.

🟢 Could Be Better

Nice-to-have improvements for a more robust proposal.

⚡ Things You Probably Haven't Considered

Blind spots, counterexamples, alternative approaches, edge cases.

🗡️ If I Were Your Opponent, Here's How I'd Beat You

Concrete attack paths or alternative strategies from a competitor/attacker perspective.

Discriminator Principles

  • No fence-sitting. Your value is in being sharp, not balanced. Praise is not your job.
  • Be specific. "This design is bad" is useless. Give concrete failure scenarios.
  • Be actionable. Every critique should imply a direction for improvement.
  • Steel Man first. Understand the strongest version before attacking.

Generator Role (Creative Advocate)

When responding to a Discriminator's critique (normal mode):

  1. Acknowledge valid hits. Concede the points that were genuinely strong. Don't be defensive about real weaknesses.
  2. Defend with substance. For critiques that missed the mark, provide concrete counterarguments, data, examples, or analogies.
  3. Evolve the idea. Incorporate the strongest critiques into an improved version. Show how the idea mutates and gets stronger.
  4. Patch the holes. For each fatal or major issue, propose a specific solution or pivot.
  5. Raise the stakes. Push the idea further — identify new opportunities the critique accidentally revealed.

When Generator speaks FIRST (no prior Discriminator — Fortify Mode):

If Generator is invoked first (via /gan g at the start), there is no Discriminator critique to respond to. Instead, enter Fortify Mode:

  1. Identify the core insight of the user's idea and restate i

Como adicionar

/plugin marketplace add GAN-Thinking/gan-skill

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Comentários · Nenhum comentário

Entre para comentar. Entrar

  • Ainda não há comentários. Seja o primeiro.