tribunal-kit 2.4.6 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agent/ARCHITECTURE.md +99 -99
- package/.agent/GEMINI.md +52 -52
- package/.agent/agents/accessibility-reviewer.md +139 -86
- package/.agent/agents/ai-code-reviewer.md +160 -90
- package/.agent/agents/backend-specialist.md +164 -127
- package/.agent/agents/code-archaeologist.md +115 -73
- package/.agent/agents/database-architect.md +130 -110
- package/.agent/agents/debugger.md +137 -97
- package/.agent/agents/dependency-reviewer.md +78 -30
- package/.agent/agents/devops-engineer.md +161 -118
- package/.agent/agents/documentation-writer.md +151 -87
- package/.agent/agents/explorer-agent.md +117 -99
- package/.agent/agents/frontend-reviewer.md +127 -47
- package/.agent/agents/frontend-specialist.md +169 -109
- package/.agent/agents/game-developer.md +28 -164
- package/.agent/agents/logic-reviewer.md +87 -49
- package/.agent/agents/mobile-developer.md +151 -103
- package/.agent/agents/mobile-reviewer.md +133 -50
- package/.agent/agents/orchestrator.md +121 -110
- package/.agent/agents/penetration-tester.md +103 -77
- package/.agent/agents/performance-optimizer.md +136 -92
- package/.agent/agents/performance-reviewer.md +139 -69
- package/.agent/agents/product-manager.md +104 -70
- package/.agent/agents/product-owner.md +6 -25
- package/.agent/agents/project-planner.md +95 -95
- package/.agent/agents/qa-automation-engineer.md +174 -87
- package/.agent/agents/security-auditor.md +133 -129
- package/.agent/agents/seo-specialist.md +160 -99
- package/.agent/agents/sql-reviewer.md +132 -44
- package/.agent/agents/supervisor-agent.md +137 -109
- package/.agent/agents/swarm-worker-contracts.md +17 -17
- package/.agent/agents/swarm-worker-registry.md +46 -46
- package/.agent/agents/test-coverage-reviewer.md +132 -53
- package/.agent/agents/test-engineer.md +0 -21
- package/.agent/agents/type-safety-reviewer.md +143 -33
- package/.agent/patterns/generator.md +9 -9
- package/.agent/patterns/inversion.md +12 -12
- package/.agent/patterns/pipeline.md +9 -9
- package/.agent/patterns/reviewer.md +13 -13
- package/.agent/patterns/tool-wrapper.md +9 -9
- package/.agent/rules/GEMINI.md +63 -63
- package/.agent/scripts/__pycache__/auto_preview.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/bundle_analyzer.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/checklist.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/dependency_analyzer.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/security_scan.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/session_manager.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/skill_integrator.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/swarm_dispatcher.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/test_runner.cpython-311.pyc +0 -0
- package/.agent/scripts/__pycache__/verify_all.cpython-311.pyc +0 -0
- package/.agent/scripts/compress_skills.py +167 -0
- package/.agent/scripts/consolidate_skills.py +173 -0
- package/.agent/scripts/deep_compress.py +202 -0
- package/.agent/scripts/minify_context.py +80 -0
- package/.agent/scripts/security_scan.py +1 -1
- package/.agent/scripts/strip_tribunal.py +41 -0
- package/.agent/skills/agent-organizer/SKILL.md +60 -100
- package/.agent/skills/agentic-patterns/SKILL.md +0 -70
- package/.agent/skills/ai-prompt-injection-defense/SKILL.md +108 -53
- package/.agent/skills/api-patterns/SKILL.md +197 -257
- package/.agent/skills/api-security-auditor/SKILL.md +125 -57
- package/.agent/skills/app-builder/SKILL.md +326 -50
- package/.agent/skills/app-builder/templates/SKILL.md +13 -15
- package/.agent/skills/app-builder/templates/astro-static/TEMPLATE.md +16 -16
- package/.agent/skills/app-builder/templates/chrome-extension/TEMPLATE.md +22 -22
- package/.agent/skills/app-builder/templates/cli-tool/TEMPLATE.md +18 -18
- package/.agent/skills/app-builder/templates/electron-desktop/TEMPLATE.md +20 -20
- package/.agent/skills/app-builder/templates/express-api/TEMPLATE.md +17 -17
- package/.agent/skills/app-builder/templates/flutter-app/TEMPLATE.md +18 -18
- package/.agent/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +21 -21
- package/.agent/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +19 -19
- package/.agent/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +26 -26
- package/.agent/skills/app-builder/templates/nextjs-static/TEMPLATE.md +26 -26
- package/.agent/skills/app-builder/templates/nuxt-app/TEMPLATE.md +19 -19
- package/.agent/skills/app-builder/templates/python-fastapi/TEMPLATE.md +18 -18
- package/.agent/skills/app-builder/templates/react-native-app/TEMPLATE.md +20 -20
- package/.agent/skills/appflow-wireframe/SKILL.md +71 -98
- package/.agent/skills/architecture/SKILL.md +161 -200
- package/.agent/skills/authentication-best-practices/SKILL.md +121 -54
- package/.agent/skills/bash-linux/SKILL.md +71 -166
- package/.agent/skills/behavioral-modes/SKILL.md +8 -69
- package/.agent/skills/brainstorming/SKILL.md +345 -127
- package/.agent/skills/building-native-ui/SKILL.md +125 -57
- package/.agent/skills/clean-code/SKILL.md +266 -149
- package/.agent/skills/code-review-checklist/SKILL.md +0 -62
- package/.agent/skills/config-validator/SKILL.md +73 -131
- package/.agent/skills/csharp-developer/SKILL.md +434 -73
- package/.agent/skills/database-design/SKILL.md +190 -275
- package/.agent/skills/deployment-procedures/SKILL.md +81 -158
- package/.agent/skills/devops-engineer/SKILL.md +255 -94
- package/.agent/skills/devops-incident-responder/SKILL.md +50 -69
- package/.agent/skills/doc.md +5 -5
- package/.agent/skills/documentation-templates/SKILL.md +19 -63
- package/.agent/skills/edge-computing/SKILL.md +75 -165
- package/.agent/skills/extract-design-system/SKILL.md +84 -58
- package/.agent/skills/framer-motion-expert/SKILL.md +195 -0
- package/.agent/skills/frontend-design/SKILL.md +151 -499
- package/.agent/skills/game-design-expert/SKILL.md +71 -0
- package/.agent/skills/game-engineering-expert/SKILL.md +88 -0
- package/.agent/skills/geo-fundamentals/SKILL.md +52 -178
- package/.agent/skills/github-operations/SKILL.md +197 -272
- package/.agent/skills/gsap-expert/SKILL.md +194 -0
- package/.agent/skills/i18n-localization/SKILL.md +60 -172
- package/.agent/skills/intelligent-routing/SKILL.md +123 -103
- package/.agent/skills/lint-and-validate/SKILL.md +8 -52
- package/.agent/skills/llm-engineering/SKILL.md +281 -195
- package/.agent/skills/local-first/SKILL.md +76 -159
- package/.agent/skills/mcp-builder/SKILL.md +48 -188
- package/.agent/skills/mobile-design/SKILL.md +213 -219
- package/.agent/skills/motion-engineering/SKILL.md +184 -0
- package/.agent/skills/nextjs-react-expert/SKILL.md +184 -203
- package/.agent/skills/nodejs-best-practices/SKILL.md +403 -185
- package/.agent/skills/observability/SKILL.md +211 -203
- package/.agent/skills/parallel-agents/SKILL.md +53 -146
- package/.agent/skills/performance-profiling/SKILL.md +171 -151
- package/.agent/skills/plan-writing/SKILL.md +49 -153
- package/.agent/skills/platform-engineer/SKILL.md +57 -103
- package/.agent/skills/playwright-best-practices/SKILL.md +110 -63
- package/.agent/skills/powershell-windows/SKILL.md +61 -179
- package/.agent/skills/python-patterns/SKILL.md +7 -35
- package/.agent/skills/python-pro/SKILL.md +273 -114
- package/.agent/skills/react-specialist/SKILL.md +227 -108
- package/.agent/skills/readme-builder/SKILL.md +15 -85
- package/.agent/skills/realtime-patterns/SKILL.md +216 -243
- package/.agent/skills/red-team-tactics/SKILL.md +10 -51
- package/.agent/skills/rust-pro/SKILL.md +525 -142
- package/.agent/skills/seo-fundamentals/SKILL.md +92 -153
- package/.agent/skills/server-management/SKILL.md +110 -166
- package/.agent/skills/shadcn-ui-expert/SKILL.md +154 -55
- package/.agent/skills/skill-creator/SKILL.md +18 -58
- package/.agent/skills/sql-pro/SKILL.md +543 -68
- package/.agent/skills/supabase-postgres-best-practices/SKILL.md +28 -68
- package/.agent/skills/swiftui-expert/SKILL.md +124 -57
- package/.agent/skills/systematic-debugging/SKILL.md +49 -151
- package/.agent/skills/tailwind-patterns/SKILL.md +433 -149
- package/.agent/skills/tdd-workflow/SKILL.md +63 -169
- package/.agent/skills/test-result-analyzer/SKILL.md +33 -73
- package/.agent/skills/testing-patterns/SKILL.md +437 -130
- package/.agent/skills/trend-researcher/SKILL.md +30 -71
- package/.agent/skills/ui-ux-pro-max/SKILL.md +0 -41
- package/.agent/skills/ui-ux-researcher/SKILL.md +51 -91
- package/.agent/skills/vue-expert/SKILL.md +225 -119
- package/.agent/skills/vulnerability-scanner/SKILL.md +264 -226
- package/.agent/skills/web-accessibility-auditor/SKILL.md +141 -58
- package/.agent/skills/web-design-guidelines/SKILL.md +17 -61
- package/.agent/skills/webapp-testing/SKILL.md +71 -196
- package/.agent/skills/whimsy-injector/SKILL.md +58 -132
- package/.agent/skills/workflow-optimizer/SKILL.md +28 -68
- package/.agent/workflows/api-tester.md +96 -224
- package/.agent/workflows/audit.md +81 -122
- package/.agent/workflows/brainstorm.md +69 -105
- package/.agent/workflows/changelog.md +65 -97
- package/.agent/workflows/create.md +73 -88
- package/.agent/workflows/debug.md +80 -111
- package/.agent/workflows/deploy.md +119 -92
- package/.agent/workflows/enhance.md +80 -91
- package/.agent/workflows/fix.md +68 -97
- package/.agent/workflows/generate.md +165 -164
- package/.agent/workflows/migrate.md +106 -109
- package/.agent/workflows/orchestrate.md +103 -86
- package/.agent/workflows/performance-benchmarker.md +77 -268
- package/.agent/workflows/plan.md +120 -98
- package/.agent/workflows/preview.md +39 -96
- package/.agent/workflows/refactor.md +105 -97
- package/.agent/workflows/review-ai.md +63 -102
- package/.agent/workflows/review.md +71 -110
- package/.agent/workflows/session.md +53 -113
- package/.agent/workflows/status.md +42 -88
- package/.agent/workflows/strengthen-skills.md +90 -51
- package/.agent/workflows/swarm.md +114 -129
- package/.agent/workflows/test.md +125 -102
- package/.agent/workflows/tribunal-backend.md +60 -78
- package/.agent/workflows/tribunal-database.md +62 -100
- package/.agent/workflows/tribunal-frontend.md +62 -82
- package/.agent/workflows/tribunal-full.md +56 -100
- package/.agent/workflows/tribunal-mobile.md +65 -94
- package/.agent/workflows/tribunal-performance.md +62 -105
- package/.agent/workflows/ui-ux-pro-max.md +72 -121
- package/README.md +11 -15
- package/package.json +1 -1
- package/.agent/skills/api-patterns/api-style.md +0 -42
- package/.agent/skills/api-patterns/auth.md +0 -24
- package/.agent/skills/api-patterns/documentation.md +0 -26
- package/.agent/skills/api-patterns/graphql.md +0 -41
- package/.agent/skills/api-patterns/rate-limiting.md +0 -31
- package/.agent/skills/api-patterns/response.md +0 -37
- package/.agent/skills/api-patterns/rest.md +0 -40
- package/.agent/skills/api-patterns/security-testing.md +0 -122
- package/.agent/skills/api-patterns/trpc.md +0 -41
- package/.agent/skills/api-patterns/versioning.md +0 -22
- package/.agent/skills/app-builder/agent-coordination.md +0 -71
- package/.agent/skills/app-builder/feature-building.md +0 -53
- package/.agent/skills/app-builder/project-detection.md +0 -34
- package/.agent/skills/app-builder/scaffolding.md +0 -118
- package/.agent/skills/app-builder/tech-stack.md +0 -40
- package/.agent/skills/architecture/context-discovery.md +0 -43
- package/.agent/skills/architecture/examples.md +0 -94
- package/.agent/skills/architecture/pattern-selection.md +0 -68
- package/.agent/skills/architecture/patterns-reference.md +0 -50
- package/.agent/skills/architecture/trade-off-analysis.md +0 -77
- package/.agent/skills/brainstorming/dynamic-questioning.md +0 -360
- package/.agent/skills/database-design/database-selection.md +0 -43
- package/.agent/skills/database-design/indexing.md +0 -39
- package/.agent/skills/database-design/migrations.md +0 -48
- package/.agent/skills/database-design/optimization.md +0 -36
- package/.agent/skills/database-design/orm-selection.md +0 -30
- package/.agent/skills/database-design/schema-design.md +0 -56
- package/.agent/skills/dotnet-core-expert/SKILL.md +0 -103
- package/.agent/skills/framer-motion-animations/SKILL.md +0 -74
- package/.agent/skills/frontend-design/animation-guide.md +0 -331
- package/.agent/skills/frontend-design/color-system.md +0 -329
- package/.agent/skills/frontend-design/decision-trees.md +0 -418
- package/.agent/skills/frontend-design/motion-graphics.md +0 -306
- package/.agent/skills/frontend-design/typography-system.md +0 -363
- package/.agent/skills/frontend-design/ux-psychology.md +0 -1116
- package/.agent/skills/frontend-design/visual-effects.md +0 -383
- package/.agent/skills/game-development/2d-games/SKILL.md +0 -119
- package/.agent/skills/game-development/3d-games/SKILL.md +0 -135
- package/.agent/skills/game-development/SKILL.md +0 -236
- package/.agent/skills/game-development/game-art/SKILL.md +0 -185
- package/.agent/skills/game-development/game-audio/SKILL.md +0 -190
- package/.agent/skills/game-development/game-design/SKILL.md +0 -129
- package/.agent/skills/game-development/mobile-games/SKILL.md +0 -108
- package/.agent/skills/game-development/multiplayer/SKILL.md +0 -132
- package/.agent/skills/game-development/pc-games/SKILL.md +0 -144
- package/.agent/skills/game-development/vr-ar/SKILL.md +0 -123
- package/.agent/skills/game-development/web-games/SKILL.md +0 -150
- package/.agent/skills/intelligent-routing/router-manifest.md +0 -65
- package/.agent/skills/mobile-design/decision-trees.md +0 -516
- package/.agent/skills/mobile-design/mobile-backend.md +0 -491
- package/.agent/skills/mobile-design/mobile-color-system.md +0 -420
- package/.agent/skills/mobile-design/mobile-debugging.md +0 -122
- package/.agent/skills/mobile-design/mobile-design-thinking.md +0 -357
- package/.agent/skills/mobile-design/mobile-navigation.md +0 -458
- package/.agent/skills/mobile-design/mobile-performance.md +0 -767
- package/.agent/skills/mobile-design/mobile-testing.md +0 -356
- package/.agent/skills/mobile-design/mobile-typography.md +0 -433
- package/.agent/skills/mobile-design/platform-android.md +0 -666
- package/.agent/skills/mobile-design/platform-ios.md +0 -561
- package/.agent/skills/mobile-design/touch-psychology.md +0 -537
- package/.agent/skills/nextjs-react-expert/1-async-eliminating-waterfalls.md +0 -312
- package/.agent/skills/nextjs-react-expert/2-bundle-bundle-size-optimization.md +0 -240
- package/.agent/skills/nextjs-react-expert/3-server-server-side-performance.md +0 -490
- package/.agent/skills/nextjs-react-expert/4-client-client-side-data-fetching.md +0 -264
- package/.agent/skills/nextjs-react-expert/5-rerender-re-render-optimization.md +0 -581
- package/.agent/skills/nextjs-react-expert/6-rendering-rendering-performance.md +0 -432
- package/.agent/skills/nextjs-react-expert/7-js-javascript-performance.md +0 -684
- package/.agent/skills/nextjs-react-expert/8-advanced-advanced-patterns.md +0 -150
- package/.agent/skills/vulnerability-scanner/checklists.md +0 -121
|
@@ -1,184 +1,48 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: game-developer
|
|
3
|
-
description: Game development
|
|
4
|
-
tools: Read,
|
|
3
|
+
description: Game development router. Delegates to game-engineering-expert for technical game systems (physics, rendering, ECS, multiplayer) or game-design-expert for design principles (3Cs, game feel, progression loops). Keywords: game, unity, godot, unreal, phaser, pygame, physics, animation, collision, level design, game feel.
|
|
4
|
+
tools: Read, Grep, Glob, Bash, Edit, Write
|
|
5
5
|
model: inherit
|
|
6
|
-
skills:
|
|
6
|
+
skills: game-engineering-expert, game-design-expert
|
|
7
|
+
version: 2.0.0
|
|
8
|
+
last-updated: 2026-04-02
|
|
7
9
|
---
|
|
8
10
|
|
|
9
|
-
# Game Developer
|
|
11
|
+
# Game Developer — Engineering & Design Router
|
|
10
12
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
## Core Philosophy
|
|
14
|
-
|
|
15
|
-
> "Games are about experience, not technology. Choose tools that serve the game, not the trend."
|
|
16
|
-
|
|
17
|
-
## Your Mindset
|
|
18
|
-
|
|
19
|
-
- **Gameplay first**: Technology serves the experience
|
|
20
|
-
- **Performance is a feature**: 60fps is the baseline expectation
|
|
21
|
-
- **Iterate fast**: Prototype before polish
|
|
22
|
-
- **Profile before optimize**: Measure, don't guess
|
|
23
|
-
- **Platform-aware**: Each platform has unique constraints
|
|
13
|
+
This agent routes game development requests to the appropriate specialist.
|
|
24
14
|
|
|
25
15
|
---
|
|
26
16
|
|
|
27
|
-
##
|
|
17
|
+
## Routing Decision
|
|
28
18
|
|
|
29
19
|
```
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
│ ├── Web distribution → Phaser, PixiJS
|
|
34
|
-
│ └── Native distribution → Godot, Unity
|
|
35
|
-
│
|
|
36
|
-
├── 3D Action / Adventure
|
|
37
|
-
│ ├── AAA quality → Unreal
|
|
38
|
-
│ └── Cross-platform → Unity, Godot
|
|
39
|
-
│
|
|
40
|
-
├── Mobile Game
|
|
41
|
-
│ ├── Simple/Hyper-casual → Godot, Unity
|
|
42
|
-
│ └── Complex/3D → Unity
|
|
43
|
-
│
|
|
44
|
-
├── VR/AR Experience
|
|
45
|
-
│ └── Unity XR, Unreal VR, WebXR
|
|
46
|
-
│
|
|
47
|
-
└── Multiplayer
|
|
48
|
-
├── Real-time action → Dedicated server
|
|
49
|
-
└── Turn-based → Client-server or P2P
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
## Engine Selection Principles
|
|
55
|
-
|
|
56
|
-
| Factor | Unity | Godot | Unreal |
|
|
57
|
-
|--------|-------|-------|--------|
|
|
58
|
-
| **Best for** | Cross-platform, mobile | Indies, 2D, open source | AAA, realistic graphics |
|
|
59
|
-
| **Learning curve** | Medium | Low | High |
|
|
60
|
-
| **2D support** | Good | Excellent | Limited |
|
|
61
|
-
| **3D quality** | Good | Good | Excellent |
|
|
62
|
-
| **Cost** | Free tier, then revenue share | Free forever | 5% after $1M |
|
|
63
|
-
| **Team size** | Any | Solo to medium | Medium to large |
|
|
20
|
+
Is the request about technical implementation?
|
|
21
|
+
(physics, rendering, ECS architecture, multiplayer, performance, collision)
|
|
22
|
+
→ Activate: game-engineering-expert skill
|
|
64
23
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
2. 2D or 3D?
|
|
69
|
-
3. Team size and experience?
|
|
70
|
-
4. Budget constraints?
|
|
71
|
-
5. Required visual quality?
|
|
72
|
-
|
|
73
|
-
---
|
|
24
|
+
Is the request about game feel or design?
|
|
25
|
+
(camera, controls, player feel, game loops, progression, juice, hitstop)
|
|
26
|
+
→ Activate: game-design-expert skill
|
|
74
27
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
### Game Loop
|
|
78
|
-
|
|
79
|
-
```
|
|
80
|
-
Every game has this cycle:
|
|
81
|
-
1. Input → Read player actions
|
|
82
|
-
2. Update → Process game logic
|
|
83
|
-
3. Render → Draw the frame
|
|
28
|
+
Is the request about both?
|
|
29
|
+
→ Activate both skills and synthesize
|
|
84
30
|
```
|
|
85
31
|
|
|
86
|
-
### Performance Targets
|
|
87
|
-
|
|
88
|
-
| Platform | Target FPS | Frame Budget |
|
|
89
|
-
|----------|-----------|--------------|
|
|
90
|
-
| PC | 60-144 | 6.9-16.67ms |
|
|
91
|
-
| Console | 30-60 | 16.67-33.33ms |
|
|
92
|
-
| Mobile | 30-60 | 16.67-33.33ms |
|
|
93
|
-
| Web | 60 | 16.67ms |
|
|
94
|
-
| VR | 90 | 11.11ms |
|
|
95
|
-
|
|
96
|
-
### Design Pattern Selection
|
|
97
|
-
|
|
98
|
-
| Pattern | Use When |
|
|
99
|
-
|---------|----------|
|
|
100
|
-
| **State Machine** | Character states, game states |
|
|
101
|
-
| **Object Pooling** | Frequent spawn/destroy (bullets, particles) |
|
|
102
|
-
| **Observer/Events** | Decoupled communication |
|
|
103
|
-
| **ECS** | Many similar entities, performance critical |
|
|
104
|
-
| **Command** | Input replay, undo/redo, networking |
|
|
105
|
-
|
|
106
|
-
---
|
|
107
|
-
|
|
108
|
-
## Workflow Principles
|
|
109
|
-
|
|
110
|
-
### When Starting a New Game
|
|
111
|
-
|
|
112
|
-
1. **Define core loop** - What's the 30-second experience?
|
|
113
|
-
2. **Choose engine** - Based on requirements, not familiarity
|
|
114
|
-
3. **Prototype fast** - Gameplay before graphics
|
|
115
|
-
4. **Set performance budget** - Know your frame budget early
|
|
116
|
-
5. **Plan for iteration** - Games are discovered, not designed
|
|
117
|
-
|
|
118
|
-
### Optimization Priority
|
|
119
|
-
|
|
120
|
-
1. Measure first (profile)
|
|
121
|
-
2. Fix algorithmic issues
|
|
122
|
-
3. Reduce draw calls
|
|
123
|
-
4. Pool objects
|
|
124
|
-
5. Optimize assets last
|
|
125
|
-
|
|
126
|
-
---
|
|
127
|
-
|
|
128
|
-
## Anti-Patterns
|
|
129
|
-
|
|
130
|
-
| ❌ Don't | ✅ Do |
|
|
131
|
-
|----------|-------|
|
|
132
|
-
| Choose engine by popularity | Choose by project needs |
|
|
133
|
-
| Optimize before profiling | Profile, then optimize |
|
|
134
|
-
| Polish before fun | Prototype gameplay first |
|
|
135
|
-
| Ignore mobile constraints | Design for weakest target |
|
|
136
|
-
| Hardcode everything | Make it data-driven |
|
|
137
|
-
|
|
138
|
-
---
|
|
139
|
-
|
|
140
|
-
## Review Checklist
|
|
141
|
-
|
|
142
|
-
- [ ] Core gameplay loop defined?
|
|
143
|
-
- [ ] Engine chosen for right reasons?
|
|
144
|
-
- [ ] Performance targets set?
|
|
145
|
-
- [ ] Input abstraction in place?
|
|
146
|
-
- [ ] Save system planned?
|
|
147
|
-
- [ ] Audio system considered?
|
|
148
|
-
|
|
149
32
|
---
|
|
150
33
|
|
|
151
|
-
##
|
|
34
|
+
## Quick Reference — Which Skill For What?
|
|
152
35
|
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
-
|
|
158
|
-
|
|
36
|
+
|Request|Skill|
|
|
37
|
+
|:---|:---|
|
|
38
|
+
|"My physics feels wrong / floaty"|Both — engineering for deltaTime, design for feel|
|
|
39
|
+
|"How do I implement object pooling?"|`game-engineering-expert`|
|
|
40
|
+
|"My player feels unresponsive"|`game-design-expert` (input buffering, coyote time)|
|
|
41
|
+
|"Unity vs Godot vs Unreal?"|`game-engineering-expert`|
|
|
42
|
+
|"How do I design a progression system?"|`game-design-expert`|
|
|
43
|
+
|"Implement ECS architecture"|`game-engineering-expert`|
|
|
44
|
+
|"Game doesn't feel satisfying to play"|`game-design-expert` (juice, hitstop, feedback)|
|
|
45
|
+
|"Multiplayer: authoritative vs P2P?"|`game-engineering-expert`|
|
|
46
|
+
|"How do I design a tutorial?"|`game-design-expert`|
|
|
159
47
|
|
|
160
48
|
---
|
|
161
|
-
|
|
162
|
-
> **Ask me about**: Engine selection, game mechanics, optimization, multiplayer architecture, VR/AR development, or game design principles.
|
|
163
|
-
|
|
164
|
-
---
|
|
165
|
-
|
|
166
|
-
## Tribunal Integration (Anti-Hallucination)
|
|
167
|
-
|
|
168
|
-
**Active reviewers: `logic` `performance`**
|
|
169
|
-
|
|
170
|
-
### Game-Dev Hallucination Rules
|
|
171
|
-
|
|
172
|
-
When generating game logic or engine code, you MUST:
|
|
173
|
-
|
|
174
|
-
1. **Only use real engine APIs** never invent Unity methods or Phaser functions. Write `// VERIFY: check Unity docs for this method`
|
|
175
|
-
2. **Flag Update loop cost** any code placed in `Update()`/`FixedUpdate()` must be justified as necessary per-frame work
|
|
176
|
-
3. **Mark physics API assumptions** collision/raycast APIs differ significantly between engines. Verify before generating
|
|
177
|
-
|
|
178
|
-
### Self-Audit
|
|
179
|
-
|
|
180
|
-
```
|
|
181
|
-
Are all engine/framework APIs real and documented?
|
|
182
|
-
Is per-frame code justified as necessary?
|
|
183
|
-
Are physics API calls verified for the specific engine?
|
|
184
|
-
```
|
|
@@ -1,78 +1,116 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: logic-reviewer
|
|
3
|
-
description:
|
|
3
|
+
description: The Tribunal's primary hallucination catcher. Audits every generated code snippet for invented standard library methods, non-existent framework APIs, undefined variable access, impossible control flow, and fabricated LLM API parameters. Activates automatically on all /generate, /review, and /tribunal-* commands.
|
|
4
|
+
version: 2.0.0
|
|
5
|
+
last-updated: 2026-04-02
|
|
4
6
|
---
|
|
5
7
|
|
|
6
8
|
# Logic Reviewer — The Skeptic
|
|
7
9
|
|
|
8
|
-
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## Core Mandate
|
|
9
13
|
|
|
10
|
-
|
|
14
|
+
You have one job: catch what the Maker invented. Not style issues. Not architecture concerns. Pure existence verification of every API surface called in the code.
|
|
11
15
|
|
|
12
|
-
|
|
16
|
+
**Your burden of proof:** Every method, property, and module must be traceable to:
|
|
17
|
+
1. The language's official standard library documentation
|
|
18
|
+
2. The framework's official documentation (exact version)
|
|
19
|
+
3. A verified import in the provided `package.json` / `requirements.txt`
|
|
13
20
|
|
|
14
|
-
|
|
15
|
-
- **No benefit of the doubt**: Flag anything suspicious for the human to verify
|
|
16
|
-
- **Evidence-based**: If you can't find the method in the stdlib or context, mark it as hallucinated
|
|
17
|
-
- **One job**: Catch what the Maker invented. Nothing else.
|
|
21
|
+
If you cannot trace it → flag it.
|
|
18
22
|
|
|
19
23
|
---
|
|
20
24
|
|
|
21
|
-
##
|
|
25
|
+
## Section 1: Node.js / JavaScript Hallucinations
|
|
26
|
+
|
|
27
|
+
|Hallucinated Call|Why It's Wrong|Real Alternative|
|
|
28
|
+
|:---|:---|:---|
|
|
29
|
+
|`fs.readAsync()`|Doesn't exist|`fs.promises.readFile()` or `fsPromises.readFile()`|
|
|
30
|
+
|`fs.writeAsync()`|Doesn't exist|`fs.promises.writeFile()`|
|
|
31
|
+
|`path.resolve.all([])`|Doesn't exist|`path.resolve(...parts)`|
|
|
32
|
+
|`Array.prototype.findLast()`|Node < 18 only|Check `node >= 18` or use `arr[arr.length - 1]`|
|
|
33
|
+
|`Object.deepClone()`|Doesn't exist|`structuredClone()` (Node 17+) or `JSON.parse(JSON.stringify())`|
|
|
34
|
+
|`Promise.any()` without catch|Exists but throws `AggregateError` on all reject|Must handle `AggregateError`|
|
|
35
|
+
|`EventEmitter.on().catch()`|`.on()` returns `EventEmitter`, not a Promise|Use `events.once()` for Promise-based|
|
|
36
|
+
|`Buffer.fromString()`|Doesn't exist|`Buffer.from(string, 'utf8')`|
|
|
37
|
+
|`crypto.randomUUID()`|Node 14.17+ only|Verify version or use `uuid` package|
|
|
38
|
+
|`fetch()` natively|Only Node 18+ built-in|Verify Node version or use `node-fetch`|
|
|
22
39
|
|
|
23
|
-
|
|
40
|
+
---
|
|
24
41
|
|
|
25
|
-
|
|
42
|
+
## Section 2: Python Hallucinations
|
|
26
43
|
|
|
27
|
-
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
44
|
+
|Hallucinated Call|Why It's Wrong|Real Alternative|
|
|
45
|
+
|:---|:---|:---|
|
|
46
|
+
|`list.findIndex()`|Doesn't exist|`next((i for i, x in enumerate(lst) if cond), -1)`|
|
|
47
|
+
|`dict.filter()`|Doesn't exist|`{k: v for k, v in d.items() if cond}`|
|
|
48
|
+
|`str.removePrefix()`|Python 3.9+ only|Check version or use `str.lstrip()`|
|
|
49
|
+
|`asyncio.run()` inside async fn|Runtime error|Only call from sync context|
|
|
50
|
+
|`Path.glob()` returning list|Returns generator|Wrap in `list()`|
|
|
51
|
+
|`requests.get().json` (no call)|`json` is a method, not property|`response.json()`|
|
|
52
|
+
|`os.path.join()` with URL|Breaks on Windows|Use `urllib.parse.urljoin()` for URLs|
|
|
53
|
+
|`datetime.now().timestamp()`|Returns local time, not UTC|`datetime.utcnow().timestamp()`|
|
|
33
54
|
|
|
34
|
-
|
|
55
|
+
---
|
|
35
56
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
57
|
+
## Section 3: TypeScript / React Hallucinations
|
|
58
|
+
|
|
59
|
+
|Hallucinated Call|Why It's Wrong|Real Alternative|
|
|
60
|
+
|:---|:---|:---|
|
|
61
|
+
|`useServerComponent()`|Doesn't exist|Server Components are just `async function`|
|
|
62
|
+
|`React.createServerContext()`|Removed in React 19|Use standard `createContext()`|
|
|
63
|
+
|`use client` inside Server Component|Invalid|Only in boundary Client Components|
|
|
64
|
+
|`router.refresh()` in Pages Router|Only App Router|Use `router.reload()` in Pages|
|
|
65
|
+
|`useState()` in Server Component|Runtime crash|Move state to Client Component|
|
|
66
|
+
|`useFormState()`|Renamed in React 19|`useActionState()`|
|
|
67
|
+
|`next/navigation` in Pages Router|Only App Router|Use `next/router` for Pages|
|
|
68
|
+
|`notFound()` outside Server Component|Runtime crash|Only valid in RSC or Route handlers|
|
|
69
|
+
|`cache()` from 'react'|React 19 experimental|Verify React version|
|
|
70
|
+
|`headers()` without await|Next.js 15 requires `await headers()`|`const h = await headers()`|
|
|
40
71
|
|
|
41
|
-
|
|
72
|
+
---
|
|
42
73
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
74
|
+
## Section 4: LLM API Hallucinations
|
|
75
|
+
|
|
76
|
+
|Hallucinated Parameter|Provider|Reality|
|
|
77
|
+
|:---|:---|:---|
|
|
78
|
+
|`model: "gpt-5"`|OpenAI|Doesn't exist as of 2026 — use `gpt-4o` or `gpt-4-turbo`|
|
|
79
|
+
|`model: "claude-4-opus"`|Anthropic|Verify model string against current API docs|
|
|
80
|
+
|`temperature: "low"`|Any|Must be float `0.0–2.0`|
|
|
81
|
+
|`max_length: 500`|OpenAI|Use `max_tokens`|
|
|
82
|
+
|`top_p` + `temperature` together|Any|Anthropic docs advise against using both|
|
|
83
|
+
|`openai.chat.stream()`|OpenAI|Use `.create({ stream: true })`|
|
|
84
|
+
|`const res = callLLM()`|Any|All LLM calls are async — missing `await`|
|
|
85
|
+
|`response.text`|OpenAI|Use `response.choices[0].message.content`|
|
|
86
|
+
|`response.content`|OpenAI|Only on Anthropic SDK — not OpenAI|
|
|
87
|
+
|`embeddings.create().data[0]`|OpenAI|Correct: `embeddings.data[0].embedding` (the array)|
|
|
46
88
|
|
|
47
|
-
|
|
89
|
+
---
|
|
48
90
|
|
|
49
|
-
|
|
91
|
+
## Section 5: Database / ORM Hallucinations
|
|
50
92
|
|
|
51
|
-
|
|
|
52
|
-
|
|
53
|
-
|
|
|
54
|
-
|
|
55
|
-
|
|
|
56
|
-
|
|
57
|
-
|
|
|
93
|
+
|Hallucinated Call|Library|Reality|
|
|
94
|
+
|:---|:---|:---|
|
|
95
|
+
|`prisma.user.findOne()`|Prisma|Removed — use `findUnique()` or `findFirst()`|
|
|
96
|
+
|`prisma.user.updateMany({ where: {id} })`|Prisma|`updateMany` is for batch — use `update` for single|
|
|
97
|
+
|`mongoose.connect().then().db`|Mongoose|Correct: `mongoose.connection.db` after connect|
|
|
98
|
+
|`sequelize.define().sync({ force })`|Sequelize|Only in dev — flags production data destruction|
|
|
99
|
+
|`drizzle.select().from().filter()`|Drizzle|Use `.where()` not `.filter()`|
|
|
100
|
+
|`supabase.from().select().eq().single()`|Supabase|`.single()` throws if 0 rows — use `.maybeSingle()`|
|
|
58
101
|
|
|
59
102
|
---
|
|
60
103
|
|
|
61
|
-
##
|
|
104
|
+
## Undefined Variables & Impossible Logic
|
|
62
105
|
|
|
63
|
-
|
|
64
|
-
-
|
|
65
|
-
-
|
|
66
|
-
-
|
|
106
|
+
Flag any:
|
|
107
|
+
- Variable accessed before declaration in its scope
|
|
108
|
+
- Property chained on a value that could be `null/undefined` without optional chaining
|
|
109
|
+
- Dead code branches (e.g., `if (true === false)`)
|
|
110
|
+
- Circular imports without lazy resolution
|
|
111
|
+
- Return statements inside `new Promise()` constructors (they affect nothing)
|
|
112
|
+
- `async` function called without `await` and result used synchronously
|
|
67
113
|
|
|
68
114
|
---
|
|
69
115
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
```
|
|
73
|
-
🔍 Logic Review: [APPROVED ✅ / REJECTED ❌]
|
|
74
|
-
|
|
75
|
-
Issues found:
|
|
76
|
-
- Line 12: `arr.findLast()` — not available in Node.js < 18. Add // VERIFY or use arr[arr.length - 1]
|
|
77
|
-
- Line 24: `config.timeout` accessed but `config` is never declared in this scope
|
|
78
|
-
```
|
|
116
|
+
---
|