Community Roles
OSTwin ships with a growing library of community-contributed roles alongside the core built-in roles. This page catalogs the role ecosystem, quality standards, and the 5-tier discovery system.
Role Categories
Section titled “Role Categories”Roles for Unity game development pipelines:
| Role | Description |
|---|---|
game-engineer |
Unity C# code generation, scene building, animation |
game-qa |
Playtest validation, code review, performance testing |
game-architect |
System architecture, ADRs, project context |
game-designer |
Game briefs, GDDs, UX design, epics, stories |
game-producer |
Sprint planning, milestone tracking, coordination |
game-devops |
CI/CD pipelines, Unity Cloud Build, distribution |
game-ui-analyst |
UI detection from screenshots, animation extraction |
level-designer |
Level layouts, difficulty curves, progression tuning |
narrative-designer |
Dialogue, lore, story arcs, localization |
sound-designer |
SFX, audio middleware, music integration |
tech-artist |
Shaders, VFX, animation polish, art pipeline |
ux-researcher |
Playtesting, user research, analytics |
Roles for data processing and analysis:
| Role | Description |
|---|---|
data-scientist |
ML models, search engines, recommendation systems |
database-architect |
Schema design, query optimization, migrations |
audit |
Risk investigation, data analysis, compliance review |
reporter |
Structured PDF reports, data visualization |
Roles for web and mobile interfaces:
| Role | Description |
|---|---|
engineer |
Full-stack implementation (instances: fe, be) |
technical-writer |
Documentation, gameplay instructions |
macos-automation-engineer |
macOS app control, window management, input |
Roles for orchestration and infrastructure:
| Role | Description |
|---|---|
manager |
War-room orchestration, retry management, release |
qa |
Code review, requirement verification, quality |
architect |
System design, technical decisions, ADRs |
5-Tier Discovery System
Section titled “5-Tier Discovery System”OSTwin uses a 5-tier system to match roles to tasks:
-
Exact Name Match
If a plan specifies
Roles: game-engineer, the system looks upgame-engineerdirectly in the registry. -
Capability Matching
When
capability_matchingis enabled, the system scores roles against task requirements:Score = count(role.capabilities ∩ task.requirements) / count(task.requirements)The highest-scoring role wins.
-
Alias Resolution
Capability aliases normalize common terms:
{"sql": "database","react": "frontend","ci-cd": "infrastructure","a11y": "accessibility"} -
Assignment Rules
Default fallbacks for common task types:
Task Type Default Role taskengineerreviewqadesignarchitectorchestrationmanagerinvestigationaudit -
Dynamic Role Creation
If no existing role matches, the system can auto-create a dynamic role using
auto_create_role.sh. This generates a minimalrole.jsonandROLE.mdfrom the task description.
Quality Standards
Section titled “Quality Standards”All community roles must meet these standards:
Required
Section titled “Required”- Valid
role.jsonwith all required fields ROLE.mdprompt file with clear identity and responsibilities- Unique role name not conflicting with existing registrations
- At least one capability tag
- Registration in
registry.json
Recommended
Section titled “Recommended”- Descriptive
quality_gatesthat guide agent behavior - Platform restrictions if applicable (e.g.,
"platform": ["macos"]) supported_task_typeslimiting the role to appropriate work- A README.md explaining the role’s purpose and usage
Quality Gates by Category
Section titled “Quality Gates by Category”compiles-in-unityorbuilds-cleanunit-testsortests-passlint-cleanno-hardcoded-secrets- Performance targets (e.g.,
60fps-non-negotiable)
verdict-required— must produce a clear pass/failevidence-based-review— findings must cite specific codeacceptance-criteria-met— check against definition of done
design-review— architecture must be reviewablescalability-check— design must address growth- Output-specific gates (e.g.,
brief-has-core-loop)
Submitting Community Roles
Section titled “Submitting Community Roles”-
Develop your role following the Creating Custom Roles guide
-
Place files under
contributes/roles/contributes/roles/my-role/├── role.json└── ROLE.md -
Add the registry entry with
contributes/prefix -
Write tests that verify your role handles its expected task types
-
Open a PR with the
rolelabel againstdevelop
Built-in vs Community
Section titled “Built-in vs Community”| Aspect | Built-in | Community |
|---|---|---|
| Location | .agents/roles/ |
contributes/roles/ |
| Stability | Guaranteed backward-compatible | Best-effort |
| Runner | Dedicated PowerShell script | Usually Start-DynamicRole.ps1 |
| Review | Core team | Community review |
| Model defaults | Configured centrally | Role-defined |
