Files
vitya 962b0beddd docs: update README, wiki overview, index, log; add roles/code-review/pydantic wiki pages
- README: remove autogen/crewai references, add v2 architecture diagram,
  code-review scenario, cross-LLM config examples, roadmap
- wiki/overview: event-driven architecture, Pydantic v2, roadmap
- wiki/index: add entities/roles, concepts/code-review, packages/pydantic
- wiki/log: Phase 1 completion, code-review decision
- New: entities/roles.md, concepts/code-review.md, packages/pydantic.md

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-04 06:30:33 +03:00

45 lines
1.5 KiB
Markdown

---
title: Discussion Roles
type: entity
updated: 2026-05-04
---
# Discussion Roles
Roles define participants in a meeting-room discussion. Each role binds to a provider, model, temperature, tool set, and system prompt.
## General discussion roles
| Role | Purpose | Default tools |
|------|---------|-------------|
| moderator | Guide conversation, summarize, keep on-topic | none |
| skeptic | Find weaknesses, ask hard questions, counter-argue | readonly |
| idea_generator | Propose unconventional solutions, search web for inspiration | web |
| analyst | Structure arguments, assess risks, propose action plans | all |
## Code review roles
| Role | Purpose | Default tools |
|------|---------|-------------|
| defender | Defend code decisions, explain rationale | readonly |
| attacker | Ruthlessly find bugs, style violations, dead code | readonly |
| security | Check vulnerabilities, injection, CVEs | web |
| moderator | Structure review findings into CRITICAL/IMPORTANT/MINOR | none |
## Role configuration
```yaml
roles:
my_role:
name: "Display Name"
provider: openai # provider key from providers section
model: "gpt-4o"
temperature: 0.7 # 0.0 = deterministic, 1.0 = creative
tools: "readonly" # tool set name or list ["read_file", "web_search"]
system_prompt: |
Your instructions here...
```
## Cross-LLM review
Assign different `provider` values to roles so separate LLMs cross-check each other. The defender uses one model, the attacker uses another — each catches what the other misses.