setup
Diverga v12.0 setup wizard. 4-step researcher profile setup. Captures discipline, experience, tools, database access, and Agent Teams + VS Arena preference. Triggers: setup, configure, 설정, install
From diverganpx claudepluginhub hosungyou/diverga --plugin divergaThis skill uses the workspace's default tool permissions.
/diverga:setup
Version: 12.0.0
Trigger: /diverga:setup
Description
Diverga setup wizard. 4 steps: Researcher Profile, Tools & Access, Agent Teams + VS Arena, Config Generation. Captures information that genuinely changes agent behavior.
Design Principles
- Only ask what agents actually use — no dead config fields
- Lazy config for rare features — OpenAlex email, citation format, qual software are asked when the relevant agent runs for the first time
- Researcher profile is stable — discipline and tools don't change per project; checkpoints handle project-specific decisions
Workflow
When user invokes /diverga:setup, execute this interactive wizard:
Step 0: Project Detection
Check for existing config:
- If
~/.claude/plugins/diverga/config/diverga-config.jsonexists withresearcherfield → "Existing profile detected. Update?" - Otherwise → "New profile setup"
Step 1: Welcome + Researcher Profile
Display welcome message, then ask TWO questions using a single AskUserQuestion call:
╔══════════════════════════════════════════════════════════════════╗
║ Welcome to Diverga v12.0 ║
║ AI Research Assistant - 29 Agents (24 core + 5 VS Arena) ║
╠══════════════════════════════════════════════════════════════════╣
║ ║
║ Diverga adapts to your background. ║
║ A doctoral student gets more scaffolding. ║
║ An experienced faculty gets concise recommendations. ║
║ Your preferred tools determine code and database suggestions. ║
║ ║
╚══════════════════════════════════════════════════════════════════╝
questions:
- question: "What is your primary research discipline?"
header: "Discipline"
multiSelect: false
options:
- label: "Education"
description: "Educational Technology, Curriculum, Higher Ed, STEM Ed, etc."
- label: "Psychology"
description: "Clinical, Developmental, Social, Cognitive, I/O, etc."
- label: "Health Sciences"
description: "Public Health, Nursing, Medicine, Rehabilitation, etc."
- label: "Social Sciences"
description: "Sociology, Political Science, Communication, Business, etc."
# User can also type a custom discipline via "Other"
- question: "What is your research experience level?"
header: "Experience"
multiSelect: false
options:
- label: "Doctoral Student"
description: "Currently pursuing PhD/EdD. More guidance on methodology and analysis."
- label: "Postdoc / Early Career"
description: "Completed doctorate. Familiar with research process."
- label: "Faculty / Senior Researcher"
description: "Experienced researcher. Concise recommendations preferred."
How this affects agents:
Doctoral Student→ A1 explains PICO/SPIDER, C1 scaffolds power analysis, E1 adds interpretation guidanceFaculty→ Agents skip explanations, go straight to options and trade-offs- Discipline → G1 prioritizes field-specific journals, I1 leads with field-appropriate databases
Step 2: Tools & Institutional Access
Ask TWO questions using a single AskUserQuestion call:
questions:
- question: "Which statistical software do you use?"
header: "Stats Tools"
multiSelect: true
options:
- label: "R"
description: "tidyverse, lavaan, lme4, etc."
- label: "Python"
description: "pandas, statsmodels, scikit-learn, etc."
- label: "SPSS"
description: "IBM SPSS Statistics"
- label: "Stata"
description: "Stata/SE or Stata/MP"
- question: "Which academic databases can you access?"
header: "DB Access"
multiSelect: true
options:
- label: "Scopus"
description: "Elsevier Scopus (institutional subscription)"
- label: "Web of Science"
description: "Clarivate WoS (institutional subscription)"
- label: "PsycINFO"
description: "APA PsycINFO (institutional subscription)"
- label: "ERIC + Semantic Scholar (free)"
description: "Always available, no subscription needed"
How this affects agents:
- Stats tools → E1 generates code ONLY in selected languages (no more 4-language output)
- DB access → I1/I0 recommends only accessible databases at
SCH_DATABASE_SELECTIONcheckpoint
Step 3: Agent Teams and VS Arena
question: "Configure multi-agent collaboration mode"
header: "Agent Teams"
options:
- label: "Agent Teams + VS Arena (Recommended)"
description: "Full parallel execution with inter-agent communication. VS Arena debates use real cross-critique between personas. Requires Claude Code v2.1.32+. Higher token usage."
- label: "Subagents + Classic VS (Default)"
description: "Agents run as subagents. VS Arena generates options from single agent (no cross-critique). Lower cost."
- label: "Disabled"
description: "No multi-agent features. Single agent execution only."
If "Agent Teams + VS Arena" selected, add to config:
{
"agent_teams": { "enabled": true },
"vs_arena": { "enabled": true, "team_size": 3, "cross_critique": true }
}
Also set CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 in user's settings.json env:
- Write to
~/.claude/settings.json:
(merge with existing settings, don't overwrite){ "env": { "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1" } }
If "Subagents + Classic VS" selected, add to config:
{
"agent_teams": { "enabled": false },
"vs_arena": { "enabled": true, "team_size": 3, "cross_critique": false }
}
If "Disabled" selected, add to config:
{
"agent_teams": { "enabled": false },
"vs_arena": { "enabled": false }
}
Step 4: Generate Configuration & Complete
After collecting all preferences, generate config/diverga-config.json at ~/.claude/plugins/diverga/config/:
{
"version": "12.0.0",
"researcher": {
"discipline": "Education",
"experience": "doctoral_student",
"stats_software": ["R", "SPSS"],
"db_access": ["Scopus", "ERIC", "Semantic Scholar"]
},
"agent_teams": { "enabled": true },
"vs_arena": { "enabled": true, "team_size": 3, "cross_critique": true }
}
Experience level mapping:
- "Doctoral Student" →
"doctoral_student" - "Postdoc / Early Career" →
"early_career" - "Faculty / Senior Researcher" →
"faculty"
Display completion:
╔══════════════════════════════════════════════════════════════════╗
║ Diverga v12.0 Setup Complete! ║
╠══════════════════════════════════════════════════════════════════╣
║ ║
║ Profile saved: ║
║ Discipline: Education ║
║ Experience: Doctoral Student ║
║ Stats: R, SPSS ║
║ Databases: Scopus, ERIC, Semantic Scholar ║
║ Agent Teams: Enabled ║
║ VS Arena: Cross-critique enabled ║
║ ║
║ 29 agents (24 core + 5 VS Arena) ║
║ Agent Teams orchestrator — unified parallel and debate workflows║
║ ║
║ Quick Start: ║
║ - Just describe your research in natural language ║
║ - "I want to conduct a systematic review on AI in education" ║
║ - Diverga adapts to your profile automatically ║
║ ║
║ Commands: ║
║ - /diverga:help - View all 29 agents ║
║ - /diverga:memory - Memory system commands ║
║ - /diverga:setup - Update your profile anytime ║
║ ║
╚══════════════════════════════════════════════════════════════════╝
Lazy Config (Agent-Level)
These settings are NOT asked during setup. Each agent asks when first needed:
| Setting | Agent | When Asked | Storage |
|---|---|---|---|
| OpenAlex email | G1 (Journal Matcher) | First journal_search_by_field call | .omc/config.json |
| Citation format | G2 (Publication) | First manuscript generation | researcher.citation_format in config |
| Qualitative software | E2 (Coding) | First qualitative coding task | researcher.qual_software in config |
Lazy config prompt template (for agents to use):
When an agent needs a lazy config value that isn't set yet:
- Explain WHY the information is needed (1 sentence, tied to the current task)
- Ask via AskUserQuestion with relevant options
- Save to
config/diverga-config.jsonunder theresearcherobject - Continue with the task — do NOT restart or re-prompt
Example (G1 first call):
"Journal search uses OpenAlex API. Registering your email enables
faster responses (polite pool). This is optional."
→ AskUserQuestion: [Enter email] [Skip]
→ If email: save to .omc/config.json
First-Run Detection
When a Diverga plugin session starts:
- Check if
~/.claude/plugins/diverga/config/diverga-config.jsonexists withresearcherfield - If missing → display:
Welcome to Diverga! Run /diverga:setup to set up your researcher profile (1 minute). - Do NOT auto-run — only display the suggestion once.
Config Schema Reference
{
"version": "12.0.0",
"researcher": {
"discipline": "string",
"experience": "doctoral_student | early_career | faculty",
"stats_software": ["R", "Python", "SPSS", "Stata", "Mplus"],
"db_access": ["Scopus", "Web of Science", "PsycINFO", "ERIC", "Semantic Scholar"],
"qual_software": "NVivo | ATLAS.ti | MAXQDA | Dedoose | manual",
"citation_format": "APA | Chicago | Vancouver | Harvard"
},
"agent_teams": {
"enabled": "boolean"
},
"vs_arena": {
"enabled": "boolean",
"team_size": "number (default 3)",
"cross_critique": "boolean"
}
}
Fields are added incrementally:
researcher.discipline,experience,stats_software,db_access— set during/diverga:setupresearcher.qual_software,citation_format— added by lazy config when relevant agent runsagent_teams,vs_arena— set during/diverga:setupStep 3
Error Handling
If config directory doesn't exist, create it:
mkdir -p ~/.claude/plugins/diverga/config