claude-code-arcane 2.3.0 → 2.5.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.
Files changed (141) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +131 -41
  3. package/agents/game/ue-blueprint-specialist.md +125 -0
  4. package/agents/game/ue-gas-specialist.md +133 -0
  5. package/agents/game/ue-umg-specialist.md +131 -0
  6. package/dist/cli.js +642 -478
  7. package/docs/SKILLS-CATALOG.md +42 -3
  8. package/docs/USER-GUIDE.md +28 -54
  9. package/hooks/detect-unreal.sh +90 -0
  10. package/package.json +2 -1
  11. package/profiles/agile.yaml +1 -1
  12. package/profiles/ai.yaml +1 -1
  13. package/profiles/android-native.yaml +1 -1
  14. package/profiles/audio.yaml +1 -1
  15. package/profiles/backend-dotnet.yaml +1 -1
  16. package/profiles/backend-go.yaml +1 -1
  17. package/profiles/backend-nestjs.yaml +1 -1
  18. package/profiles/backend-nextjs.yaml +1 -1
  19. package/profiles/backend-ts.yaml +1 -1
  20. package/profiles/business.yaml +1 -1
  21. package/profiles/clevel.yaml +1 -1
  22. package/profiles/clickup.yaml +1 -1
  23. package/profiles/core.yaml +1 -1
  24. package/profiles/database.yaml +1 -1
  25. package/profiles/design.yaml +1 -1
  26. package/profiles/docs.yaml +1 -1
  27. package/profiles/ecommerce.yaml +1 -1
  28. package/profiles/finance.yaml +1 -1
  29. package/profiles/flutter.yaml +1 -1
  30. package/profiles/freelance.yaml +1 -1
  31. package/profiles/frontend.yaml +1 -1
  32. package/profiles/infra.yaml +1 -1
  33. package/profiles/integrations.yaml +1 -1
  34. package/profiles/ios-native.yaml +1 -1
  35. package/profiles/jira.yaml +1 -1
  36. package/profiles/job-hunt.yaml +1 -1
  37. package/profiles/marketing.yaml +1 -1
  38. package/profiles/mobile.yaml +1 -1
  39. package/profiles/regulatory.yaml +1 -1
  40. package/profiles/second-brain.yaml +1 -1
  41. package/profiles/security.yaml +1 -1
  42. package/profiles/self-improving.yaml +1 -1
  43. package/profiles/statusline.yaml +1 -1
  44. package/profiles/testing.yaml +1 -1
  45. package/profiles/unity-design.yaml +1 -1
  46. package/profiles/unity-dev.yaml +1 -1
  47. package/profiles/unreal-dev.yaml +97 -0
  48. package/profiles/visual-novel.yaml +1 -1
  49. package/rules/gamedev/unreal-code.md +125 -0
  50. package/skills/arcane-list/SKILL.md +12 -7
  51. package/skills/install-mcp/SKILL.md +135 -46
  52. package/skills/install-mcp/references/unreal-operations.md +55 -0
  53. package/skills/ue-actor-component-architecture/SKILL.md +509 -0
  54. package/skills/ue-actor-component-architecture/references/actor-lifecycle.md +301 -0
  55. package/skills/ue-actor-component-architecture/references/component-types.md +592 -0
  56. package/skills/ue-ai-navigation/SKILL.md +526 -0
  57. package/skills/ue-ai-navigation/references/behavior-tree-patterns.md +392 -0
  58. package/skills/ue-ai-navigation/references/behavior-tree-workflow.md +107 -0
  59. package/skills/ue-ai-navigation/references/custom-bttask.md +104 -0
  60. package/skills/ue-ai-navigation/references/eqs-reference.md +423 -0
  61. package/skills/ue-animation-system/SKILL.md +521 -0
  62. package/skills/ue-animation-system/references/anim-notify-reference.md +486 -0
  63. package/skills/ue-animation-system/references/locomotion-setup.md +550 -0
  64. package/skills/ue-async-threading/SKILL.md +433 -0
  65. package/skills/ue-async-threading/references/thread-safety-guide.md +213 -0
  66. package/skills/ue-async-threading/references/threading-patterns.md +345 -0
  67. package/skills/ue-audio-system/SKILL.md +527 -0
  68. package/skills/ue-audio-system/references/audio-setup-patterns.md +700 -0
  69. package/skills/ue-blueprints/SKILL.md +134 -0
  70. package/skills/ue-blueprints/references/communication.md +82 -0
  71. package/skills/ue-character-movement/SKILL.md +475 -0
  72. package/skills/ue-character-movement/references/cmc-extension-patterns.md +335 -0
  73. package/skills/ue-character-movement/references/movement-pipeline.md +189 -0
  74. package/skills/ue-cpp-foundations/SKILL.md +533 -0
  75. package/skills/ue-cpp-foundations/references/components-and-gc.md +107 -0
  76. package/skills/ue-cpp-foundations/references/container-patterns.md +544 -0
  77. package/skills/ue-cpp-foundations/references/delegate-patterns.md +497 -0
  78. package/skills/ue-cpp-foundations/references/gameplay-classes-cpp.md +136 -0
  79. package/skills/ue-cpp-foundations/references/property-specifiers.md +306 -0
  80. package/skills/ue-data-assets-tables/SKILL.md +527 -0
  81. package/skills/ue-data-assets-tables/references/asset-loading-patterns.md +306 -0
  82. package/skills/ue-data-assets-tables/references/data-driven-design.md +378 -0
  83. package/skills/ue-editor-tools/SKILL.md +523 -0
  84. package/skills/ue-editor-tools/references/detail-customization-patterns.md +395 -0
  85. package/skills/ue-editor-tools/references/editor-module-setup.md +480 -0
  86. package/skills/ue-game-features/SKILL.md +477 -0
  87. package/skills/ue-game-features/references/experience-system.md +222 -0
  88. package/skills/ue-game-features/references/game-feature-patterns.md +308 -0
  89. package/skills/ue-gameplay-abilities/SKILL.md +518 -0
  90. package/skills/ue-gameplay-abilities/references/ability-task-reference.md +391 -0
  91. package/skills/ue-gameplay-abilities/references/gameplay-effect-reference.md +397 -0
  92. package/skills/ue-gameplay-abilities/references/gas-setup-patterns.md +369 -0
  93. package/skills/ue-gameplay-framework/SKILL.md +466 -0
  94. package/skills/ue-gameplay-framework/references/framework-class-map.md +243 -0
  95. package/skills/ue-input-system/SKILL.md +394 -0
  96. package/skills/ue-input-system/references/cpp-setup.md +131 -0
  97. package/skills/ue-input-system/references/enhanced-input-workflow.md +117 -0
  98. package/skills/ue-input-system/references/input-action-reference.md +731 -0
  99. package/skills/ue-mass-entity/SKILL.md +476 -0
  100. package/skills/ue-mass-entity/references/mass-entity-patterns.md +319 -0
  101. package/skills/ue-mass-entity/references/mass-fragment-reference.md +119 -0
  102. package/skills/ue-materials-rendering/SKILL.md +526 -0
  103. package/skills/ue-materials-rendering/references/material-parameter-reference.md +216 -0
  104. package/skills/ue-materials-rendering/references/post-process-settings.md +383 -0
  105. package/skills/ue-module-build-system/SKILL.md +487 -0
  106. package/skills/ue-module-build-system/references/build-cs-reference.md +418 -0
  107. package/skills/ue-module-build-system/references/common-build-errors.md +381 -0
  108. package/skills/ue-naming-conventions/SKILL.md +142 -0
  109. package/skills/ue-naming-conventions/references/asset-name-modifiers.md +233 -0
  110. package/skills/ue-naming-conventions/references/content-structure.md +83 -0
  111. package/skills/ue-networking-replication/SKILL.md +452 -0
  112. package/skills/ue-networking-replication/references/replication-patterns.md +526 -0
  113. package/skills/ue-networking-replication/references/rpc-decision-guide.md +393 -0
  114. package/skills/ue-niagara-effects/SKILL.md +531 -0
  115. package/skills/ue-niagara-effects/references/niagara-data-interfaces.md +491 -0
  116. package/skills/ue-niagara-effects/references/niagara-parameter-types.md +153 -0
  117. package/skills/ue-niagara-effects/references/niagara-workflow.md +115 -0
  118. package/skills/ue-packaging/SKILL.md +116 -0
  119. package/skills/ue-physics-collision/SKILL.md +423 -0
  120. package/skills/ue-physics-collision/references/collision-channel-setup.md +218 -0
  121. package/skills/ue-physics-collision/references/trace-patterns.md +499 -0
  122. package/skills/ue-procedural-generation/SKILL.md +505 -0
  123. package/skills/ue-procedural-generation/references/pcg-node-reference.md +381 -0
  124. package/skills/ue-procedural-generation/references/procedural-mesh-patterns.md +940 -0
  125. package/skills/ue-project-context/SKILL.md +305 -0
  126. package/skills/ue-sequencer-cinematics/SKILL.md +506 -0
  127. package/skills/ue-sequencer-cinematics/references/sequencer-patterns.md +629 -0
  128. package/skills/ue-serialization-savegames/SKILL.md +524 -0
  129. package/skills/ue-serialization-savegames/references/save-system-architecture.md +705 -0
  130. package/skills/ue-state-trees/SKILL.md +489 -0
  131. package/skills/ue-state-trees/references/state-tree-mass-integration.md +184 -0
  132. package/skills/ue-state-trees/references/state-tree-patterns.md +321 -0
  133. package/skills/ue-testing-debugging/SKILL.md +520 -0
  134. package/skills/ue-testing-debugging/references/automation-test-patterns.md +387 -0
  135. package/skills/ue-testing-debugging/references/profiling-commands.md +357 -0
  136. package/skills/ue-ui-umg-slate/SKILL.md +431 -0
  137. package/skills/ue-ui-umg-slate/references/common-ui-setup.md +484 -0
  138. package/skills/ue-ui-umg-slate/references/widget-types.md +487 -0
  139. package/skills/ue-world-level-streaming/SKILL.md +518 -0
  140. package/skills/ue-world-level-streaming/references/streaming-patterns.md +414 -0
  141. package/templates/gamedev/unreal-project-context.md +107 -0
package/CHANGELOG.md CHANGED
@@ -1,3 +1,26 @@
1
+ # [2.5.0](https://github.com/SebastianLuser/claude-code-arcane/compare/v2.4.0...v2.5.0) (2026-08-13)
2
+
3
+
4
+ ### Features
5
+
6
+ * **install:** interactive wizard with stack auto-detection ([ae0b9b8](https://github.com/SebastianLuser/claude-code-arcane/commit/ae0b9b8a67146faa22258f30c9d33bf7e4fffbf9))
7
+ * **profiles:** replace base/addon split with thematic categories ([5bcddab](https://github.com/SebastianLuser/claude-code-arcane/commit/5bcddab2e9081e6d6505ac00b6345dd3b57eed4a))
8
+
9
+ # [2.4.0](https://github.com/SebastianLuser/claude-code-arcane/compare/v2.3.0...v2.4.0) (2026-08-13)
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * **agents:** add the three ue-* sub-specialists unreal-specialist delegates to ([9b52708](https://github.com/SebastianLuser/claude-code-arcane/commit/9b527081c9d7166a96a299c2658a1b0adfb4db58))
15
+
16
+
17
+ ### Features
18
+
19
+ * **hooks:** detect Unreal projects on session start ([dfb66ae](https://github.com/SebastianLuser/claude-code-arcane/commit/dfb66ae6b70f40dda226f18027aefe574005a5d8))
20
+ * **install-mcp:** handle Unreal's engine-provided MCP alongside Unity ([96fe518](https://github.com/SebastianLuser/claude-code-arcane/commit/96fe51817015d69d31aebc84088c774c9a55dd0b))
21
+ * **unreal:** add the unreal-dev profile with 29 ue-* skills ([011a3f1](https://github.com/SebastianLuser/claude-code-arcane/commit/011a3f1992f1ac515acf9595cfc568f2824a6d21))
22
+ * **unreal:** add ue-naming-conventions from the Gamemakin style guide ([301880e](https://github.com/SebastianLuser/claude-code-arcane/commit/301880e25c8ebd71987e96387fbf74650d313574))
23
+
1
24
  # [2.3.0](https://github.com/SebastianLuser/claude-code-arcane/compare/v2.2.0...v2.3.0) (2026-08-12)
2
25
 
3
26
 
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Claude Code Arcane
2
2
 
3
- > **397 skills, 106 agents, 16 hooks and 27 rules for Claude Code — selective deploy by profile.**
3
+ > **427 skills, 109 agents, 17 hooks and 28 rules for Claude Code — selective deploy by profile.**
4
4
 
5
5
  A configuration harness installable via `npx`. Pick a **profile** that matches your stack and only the relevant tools get installed into your project's `.claude/` directory.
6
6
 
@@ -32,7 +32,7 @@ Each profile is a YAML file that bundles skills, agents, rules, and permissions:
32
32
  ```yaml
33
33
  # profiles/backend-ts.yaml
34
34
  name: backend-ts
35
- type: base
35
+ category: backend
36
36
  skills: [api-design, auth-strategy, jwt-strategy, ...]
37
37
  rules:
38
38
  universal: [backend-code, api-code, migration-code]
@@ -43,14 +43,16 @@ permissions:
43
43
 
44
44
  ### 2. Combine profiles with `+`
45
45
 
46
+ All profiles are equal — there is no "base vs addon" distinction. Combine as many as you need:
47
+
46
48
  ```bash
47
49
  npx claude-code-arcane install backend-ts+agile+testing
48
- # ^^^^^^^^^^ ^^^^^ ^^^^^^^
49
- # base addon addon
50
50
  ```
51
51
 
52
52
  The installer merges all profiles, deduplicates skills, and installs only what's needed.
53
53
 
54
+ Not sure what to pick? Run `install` with no arguments to get an interactive picker: it detects your stack (Unity, Unreal, Flutter, Go, NestJS, Next.js, React Native, React, .NET, native Android/iOS...) and pre-selects the matching profiles, then lets you add more from a menu grouped by category. Power users can accept the detected suggestion with a single Enter — or skip the menu entirely with the `a+b+c` syntax above.
55
+
54
56
  ### 3. Core is always included
55
57
 
56
58
  Every installation automatically loads `core.yaml` first:
@@ -92,7 +94,7 @@ npx claude-code-arcane install unity-dev --dry-run # Preview without installin
92
94
  ```bash
93
95
  npx claude-code-arcane add api-design # Add a single skill
94
96
  npx claude-code-arcane add security-audit owasp # Add multiple skills
95
- npx claude-code-arcane add +security # Add an entire profile as addon
97
+ npx claude-code-arcane add +security # Add an entire profile
96
98
  npx claude-code-arcane add +database +testing # Add multiple profiles
97
99
  ```
98
100
 
@@ -157,48 +159,89 @@ Once installed, manage the installation from within a Claude Code session:
157
159
 
158
160
  ## Available Profiles
159
161
 
160
- ### Base (pick one or combine several)
162
+ All profiles combine freely with `+` — there is no required "base". Grouped by category:
163
+
164
+ ### Backend
161
165
 
162
166
  | Profile | Stack | Skills | Agents |
163
167
  |---------|-------|--------|--------|
164
- | `unity-dev` | Unity programmer — C#, architecture, performance, builds | 25 | game |
165
- | `unity-design` | Game designer — GDDs, balance, art bible, playtesting | 17 | game |
166
- | `audio` | Game audio — direction, composition, sound design, middleware, VO, QA | 13 | audio |
167
168
  | `backend-ts` | Backend TypeScript — Fastify, Prisma, Zod, API design | 33 | engineering |
168
169
  | `backend-go` | Backend Go — Clean Arch, DB, auth, API, CI | 19 | engineering |
169
170
  | `backend-dotnet` | Backend .NET — ASP.NET Core, Vertical Slice/Clean, EF Core, JWT | 25 | engineering |
171
+ | `backend-nestjs` | Backend NestJS — feature modules, DI, Prisma, JWT, microservices | 25 | engineering |
172
+ | `backend-nextjs` | Next.js full-stack — App Router, RSC, Server Actions, SEO, AI SDK | 22 | engineering |
173
+
174
+ ### Frontend & Design
175
+
176
+ | Profile | Stack | Skills | Agents |
177
+ |---------|-------|--------|--------|
170
178
  | `frontend` | React + Vite + TypeScript | 14 | engineering |
179
+ | `design` | Figma, UX review, design system, handoff | 6 | product |
180
+
181
+ ### Mobile
182
+
183
+ | Profile | Stack | Skills | Agents |
184
+ |---------|-------|--------|--------|
171
185
  | `mobile` | React Native + Expo + TypeScript | 12 | engineering |
172
186
  | `flutter` | Flutter + Dart cross-platform | 8 | engineering |
173
187
  | `android-native` | Kotlin + Jetpack Compose + Material Design 3 | 8 | engineering |
174
188
  | `ios-native` | Swift + UIKit/SwiftUI + Apple HIG | 8 | engineering |
175
189
 
176
- ### Add-ons (combine with `+`)
177
-
178
- | Add-on | Adds | Skills | Agents |
179
- |--------|------|--------|--------|
180
- | `+agile` | Sprints, standups, retros, estimates | 10 | management, product |
181
- | `+docs` | PDF, PPTX, XLSX, DOCX, architecture decisions | 8 | — |
182
- | `+testing` | Contract, performance, regression, flakiness | 11 | quality |
183
- | `+infra` | Terraform, observability, secrets, rollback, K8s | 17 | devops |
184
- | `+database` | Indexing, migrations, seeding, replicas, optimization | 8 | — |
185
- | `+security` | Audits, OWASP, secrets, backups | 5 | — |
186
- | `+design` | Figma, UX review, design system, handoff | 6 | product |
187
- | `+integrations` | GitHub Projects, Slack, Postman | 3 | integrations |
188
- | `+clickup` | ClickUp via MCP — tasks, docs, time tracking | 3 | — |
189
- | `+jira` | Jira via REST API — issues, sprints, boards | 3 | — |
190
- | `+ai` | LLM cost optimization, RAG, ML, data engineering | 7 | ai |
191
- | `+business` | Contracts, customer success, revenue ops, sales | 4 | business |
192
- | `+clevel` | C-suite advisors, board prep, strategic ops | 28 | clevel |
193
- | `+finance` | Investment analysis, financial modeling, SaaS metrics | 3 | business |
194
- | `+marketing` | Content, growth, SEO/CRO, strategy, analytics | 44 | marketing |
195
- | `+regulatory` | ISO 13485, GDPR, FDA, SOC 2, ISMS, QMS, MDR | 13 | regulatory |
196
- | `+job-hunt` | Job search end-to-end — master profile, ATS CV with verification, job scraping with dedup, LinkedIn, portfolio, cover letters, outreach, interview prep, registry/CSV traceability, fresh-context review agents | 17 | career |
197
- | `+freelance` | Freelance projects — keyless public-source scanning with dedup, market rate intel, client risk screening, proposals priced above your net floor rate, contracts/SOWs, registry/CSV traceability, kickoff scope validation, delivery and change orders, acquisition-cost pipeline | 15 | freelance |
198
- | `+ecommerce` | Commerce end-to-end agnóstico de lenguaje — data model, checkout, inventario, órdenes, pagos, promociones, shipping/tax, listings, analytics, feeds, storefront, suscripciones | 12 | ecommerce |
199
- | `+second-brain` | Second brain en Obsidian — captura sin fricción, reviews diario/semanal/mensual, notas atómicas y hub files (PARA + Zettelkasten), búsqueda con ranking, caché de contexto entre sesiones, auditoría de salud del vault, sintaxis nativa (markdown, Bases, Canvas) | 14 | — |
200
- | `+self-improving` | Agent self-improvement and skill extraction | 2 | — |
201
- | `+statusline` | Claude Code status bar (branch, division, session info) | 0 | — |
190
+ ### Gamedev
191
+
192
+ | Profile | Stack | Skills | Agents |
193
+ |---------|-------|--------|--------|
194
+ | `unity-dev` | Unity programmer — C#, architecture, performance, builds | 25 | game |
195
+ | `unity-design` | Game designer — GDDs, balance, art bible, playtesting | 17 | game |
196
+ | `unreal-dev` | Unreal Engine 5 programmer — C++, Blueprints, GAS, replication, rendering, packaging | 49 | game |
197
+ | `visual-novel` | Visual novel developer — Ren'Py, narrative, branching | 17 | visualnovel, game |
198
+ | `audio` | Game audio — direction, composition, sound design, middleware, VO, QA | 13 | audio |
199
+
200
+ ### Platform & Quality
201
+
202
+ | Profile | Adds | Skills | Agents |
203
+ |---------|------|--------|--------|
204
+ | `infra` | Terraform, observability, secrets, rollback, K8s | 17 | devops |
205
+ | `database` | Indexing, migrations, seeding, replicas, optimization | 8 | — |
206
+ | `security` | Audits, OWASP, secrets, backups | 5 | — |
207
+ | `testing` | Contract, performance, regression, flakiness | 11 | quality |
208
+ | `ai` | LLM cost optimization, RAG, ML, data engineering | 7 | ai |
209
+
210
+ ### Project Management
211
+
212
+ | Profile | Adds | Skills | Agents |
213
+ |---------|------|--------|--------|
214
+ | `agile` | Sprints, standups, retros, estimates | 10 | management, product |
215
+ | `jira` | Jira via REST API — issues, sprints, boards | 3 | — |
216
+ | `clickup` | ClickUp via MCP — tasks, docs, time tracking | 3 | — |
217
+ | `integrations` | GitHub Projects, Slack, Postman | 3 | integrations |
218
+
219
+ ### Business
220
+
221
+ | Profile | Adds | Skills | Agents |
222
+ |---------|------|--------|--------|
223
+ | `business` | Contracts, customer success, revenue ops, sales | 4 | business |
224
+ | `clevel` | C-suite advisors, board prep, strategic ops | 28 | clevel |
225
+ | `finance` | Investment analysis, financial modeling, SaaS metrics | 3 | business |
226
+ | `marketing` | Content, growth, SEO/CRO, strategy, analytics | 44 | marketing |
227
+ | `ecommerce` | Commerce end-to-end agnóstico de lenguaje — data model, checkout, inventario, órdenes, pagos, promociones, shipping/tax, listings, analytics, feeds, storefront, suscripciones | 12 | ecommerce |
228
+ | `regulatory` | ISO 13485, GDPR, FDA, SOC 2, ISMS, QMS, MDR | 13 | regulatory |
229
+
230
+ ### Personal
231
+
232
+ | Profile | Adds | Skills | Agents |
233
+ |---------|------|--------|--------|
234
+ | `second-brain` | Second brain en Obsidian — captura sin fricción, reviews diario/semanal/mensual, notas atómicas y hub files (PARA + Zettelkasten), búsqueda con ranking, caché de contexto entre sesiones, auditoría de salud del vault, sintaxis nativa (markdown, Bases, Canvas) | 14 | — |
235
+ | `job-hunt` | Job search end-to-end — master profile, ATS CV with verification, job scraping with dedup, LinkedIn, portfolio, cover letters, outreach, interview prep, registry/CSV traceability, fresh-context review agents | 17 | career |
236
+ | `freelance` | Freelance projects — keyless public-source scanning with dedup, market rate intel, client risk screening, proposals priced above your net floor rate, contracts/SOWs, registry/CSV traceability, kickoff scope validation, delivery and change orders, acquisition-cost pipeline | 15 | freelance |
237
+
238
+ ### Utilities
239
+
240
+ | Profile | Adds | Skills | Agents |
241
+ |---------|------|--------|--------|
242
+ | `docs` | PDF, PPTX, XLSX, DOCX, architecture decisions | 8 | — |
243
+ | `self-improving` | Agent self-improvement and skill extraction | 2 | — |
244
+ | `statusline` | Claude Code status bar (branch, division, session info) | 0 | — |
202
245
 
203
246
  ### Core (always included)
204
247
 
@@ -206,6 +249,42 @@ Once installed, manage the installation from within a Claude Code session:
206
249
 
207
250
  ---
208
251
 
252
+ ## Recommended MCPs
253
+
254
+ Several profiles ship skills that drive an external tool over MCP. **Arcane does not bundle any
255
+ MCP server** — install the ones your stack needs and Claude Code connects to them.
256
+
257
+ ### Game engines
258
+
259
+ | Engine | MCP server | Where it comes from | Wire it up with |
260
+ |--------|------------|---------------------|-----------------|
261
+ | **Unreal Engine 5** | `ModelContextProtocol` + `AllToolsets` | **Ships with the engine** — nothing to add to the project, just enable the plugins in the `.uproject` | `/install-mcp unreal` |
262
+ | **Unity** | [CoplayDev — MCP for Unity](https://github.com/CoplayDev/unity-mcp) | UPM package added to `Packages/manifest.json` | `/install-mcp unity` |
263
+ | **Unity** (alternative) | [CoderGamester — mcp-unity](https://github.com/CoderGamester/mcp-unity) | UPM package, opt-in | `/install-mcp unity --secondary` |
264
+
265
+ Both engines need the editor **open and running** for the server to answer — registering the
266
+ client does not start the server.
267
+
268
+ For Unreal, Epic also publishes a companion plugin:
269
+ [unreal-engine-skills-for-claude-code-plugin](https://github.com/EpicGames/unreal-engine-skills-for-claude-code-plugin).
270
+ It ships the in-editor skills that operate and extend the MCP (`unreal-mcp`, `create-toolset`,
271
+ `unreal-skill`), which Arcane deliberately does **not** duplicate — see `ATTRIBUTION.md`.
272
+
273
+ ### Other integrations
274
+
275
+ | MCP server | Used by | Profile |
276
+ |------------|---------|---------|
277
+ | ClickUp | `/clickup` | `+clickup` |
278
+ | Figma | `/figma`, `/figma-to-code`, `/figma-tokens` | `+design` |
279
+ | Atlassian (Confluence) | `/confluence-expert`, `/atlassian-templates` | `+agile` |
280
+ | TestRail + BrowserStack | `/playwright-pro` (ships its own `.mcp.json`) | `+testing` |
281
+
282
+ `/jira-tickets` is the exception: it talks to the Jira REST API v3 over `curl`, not MCP.
283
+
284
+ Building your own server? `/mcp-server-builder` scaffolds one.
285
+
286
+ ---
287
+
209
288
  ## Examples by Project
210
289
 
211
290
  ```bash
@@ -248,7 +327,7 @@ npx claude-code-arcane install backend-ts+agile+statusline
248
327
  ## Add/Remove Workflow
249
328
 
250
329
  ```bash
251
- # Start with a base profile
330
+ # Start with a profile
252
331
  npx claude-code-arcane install backend-ts
253
332
 
254
333
  # Later, add testing and security
@@ -351,11 +430,11 @@ claude-code-arcane/
351
430
  │ ├── manifest.ts # Read/write arcane-manifest.json
352
431
  │ ├── types.ts # TypeScript interfaces
353
432
  │ └── utils.ts # Cross-platform helpers
354
- ├── skills/ # 397 skills (flat, one dir per skill)
355
- ├── profiles/ # 37 profiles (YAML)
356
- ├── agents/ # 17 dirs, 106 agents (Markdown)
357
- ├── hooks/ # 16 lifecycle hooks (Bash)
358
- ├── rules/ # 27 rules (Markdown)
433
+ ├── skills/ # 427 skills (flat, one dir per skill)
434
+ ├── profiles/ # 38 profiles (YAML)
435
+ ├── agents/ # 17 dirs, 109 agents (Markdown)
436
+ ├── hooks/ # 17 lifecycle hooks (Bash)
437
+ ├── rules/ # 28 rules (Markdown)
359
438
  ├── templates/ # Gamedev templates
360
439
  ├── docs/ # Documentation
361
440
  └── skills-selftest/ # QA framework
@@ -376,3 +455,14 @@ claude-code-arcane/
376
455
  - **OS:** Windows 10/11, macOS, Linux
377
456
  - **Node:** 20+
378
457
  - **Claude Code:** v1.0+
458
+
459
+ ---
460
+
461
+ ## Attribution
462
+
463
+ Arcane is MIT licensed (see `LICENSE`). The `ue-*` skills shipped by the `unreal-dev` profile
464
+ are derived from three upstream collections — [quodsoler/unreal-engine-skills](https://github.com/quodsoler/unreal-engine-skills)
465
+ (MIT), [EpicGames/unreal-engine-skills-for-claude-code-plugin](https://github.com/EpicGames/unreal-engine-skills-for-claude-code-plugin)
466
+ (MIT), and [gamedev-skills/awesome-gamedev-agent-skills](https://github.com/gamedev-skills/awesome-gamedev-agent-skills)
467
+ (Apache-2.0). See `ATTRIBUTION.md` for the per-skill provenance, the changes made, and the
468
+ required license notices.
@@ -0,0 +1,125 @@
1
+ ---
2
+ name: ue-blueprint-specialist
3
+ description: "The UE Blueprint specialist owns Blueprint architecture, the Blueprint/C++ boundary, graph quality and Blueprint performance. They keep graphs small and hard references under control, and hand C++ implementation to the programmers who own it."
4
+ tools: Read, Glob, Grep, Write, Edit, Task
5
+ model: sonnet
6
+ maxTurns: 20
7
+ ---
8
+ You are the Unreal Blueprint specialist for an Unreal Engine 5 project. You own Blueprint architecture and the boundary between Blueprints and C++.
9
+
10
+ ## Collaboration Protocol
11
+
12
+ **You are a collaborative implementer, not an autonomous code generator.** The user approves all architectural decisions and file changes.
13
+
14
+ ### Implementation Workflow
15
+
16
+ Before writing any code:
17
+
18
+ 1. **Read the design document:**
19
+ - Identify what's specified vs. what's ambiguous
20
+ - Note any deviations from standard patterns
21
+ - Flag potential implementation challenges
22
+
23
+ 2. **Ask architecture questions:**
24
+ - "Should this be a static utility class or a scene node?"
25
+ - "Where should [data] live? ([SystemData]? [Container] class? Config file?)"
26
+ - "The design doc doesn't specify [edge case]. What should happen when...?"
27
+ - "This will require changes to [other system]. Should I coordinate with that first?"
28
+
29
+ 3. **Propose architecture before implementing:**
30
+ - Show class structure, file organization, data flow
31
+ - Explain WHY you're recommending this approach (patterns, engine conventions, maintainability)
32
+ - Highlight trade-offs: "This approach is simpler but less flexible" vs "This is more complex but more extensible"
33
+ - Ask: "Does this match your expectations? Any changes before I write the code?"
34
+
35
+ 4. **Implement with transparency:**
36
+ - If you encounter spec ambiguities during implementation, STOP and ask
37
+ - If rules/hooks flag issues, fix them and explain what was wrong
38
+ - If a deviation from the design doc is necessary (technical constraint), explicitly call it out
39
+
40
+ 5. **Get approval before writing files:**
41
+ - Show the code or a detailed summary
42
+ - Explicitly ask: "May I write this to [filepath(s)]?"
43
+ - For multi-file changes, list all affected files
44
+ - Wait for "yes" before using Write/Edit tools
45
+
46
+ 6. **Offer next steps:**
47
+ - "Should I write tests now, or would you like to review the implementation first?"
48
+ - "This is ready for /code-review if you'd like validation"
49
+ - "I notice [potential improvement]. Should I refactor, or is this good for now?"
50
+
51
+ ### Collaborative Mindset
52
+
53
+ - Clarify before assuming — specs are never 100% complete
54
+ - Propose architecture, don't just implement — show your thinking
55
+ - Explain trade-offs transparently — there are always multiple valid approaches
56
+ - Flag deviations from design docs explicitly — designer should know if implementation differs
57
+ - Rules are your friend — when they flag issues, they're usually right
58
+ - Tests prove it works — offer to write them proactively
59
+
60
+ ## Core Responsibilities
61
+ - Decide what belongs in Blueprint and what belongs in C++, and defend the boundary
62
+ - Review Blueprint graphs for readability, hard references and per-frame cost
63
+ - Design Blueprint Function Libraries and the C++ surface designers consume
64
+ - Optimize Blueprint performance: Tick removal, reference pruning, load-time reduction
65
+ - Enforce data-only Blueprints for content variation
66
+ - Guide designers on Cast versus Interface versus Event Dispatcher
67
+
68
+ ## Blueprint Standards to Enforce
69
+
70
+ ### Architecture
71
+ - Reusable logic lives in a Blueprint Class; the Level Blueprint is for level-specific scripting only
72
+ - Past roughly 20 nodes in a single function, the logic is a C++ candidate — measure and flag it
73
+ - Content variation uses data-only Blueprints or Data Assets, not duplicated logic graphs
74
+ - The Construction Script does editor-time setup only; gameplay initialization belongs in `BeginPlay`
75
+ - Blueprint Function Libraries hold stateless helpers, exposed from C++ where hot
76
+
77
+ ### Communication and Coupling
78
+ - `Cast To` creates a hard reference that drags the target's asset tree into memory — use it only when the caller genuinely depends on that type
79
+ - Blueprint Interfaces are the default for calling across types without coupling
80
+ - Event Dispatchers handle one-to-many broadcast; listeners bind, the broadcaster stays ignorant
81
+ - Soft references (`TSoftObjectPtr`, `TSoftClassPtr`) for anything not always needed
82
+ - Cast chains are a load-time smell; flag them with the reference viewer as evidence
83
+
84
+ ### Safety
85
+ - `IsValid()` before touching any Actor-derived reference — `GetOwner()` can return null during lifecycle transitions
86
+ - Null checks on Blueprint references are not optional, and a crash risk is never silently "fixed" without explaining it
87
+ - Interface calls use the Message form or a `Does Implement Interface` guard
88
+ - `Expose on Spawn` is set for variables that must be valid before `BeginPlay`
89
+
90
+ ### Performance
91
+ - `Event Tick` is the exception, not the default: prefer perception events, timers, dispatchers and Timelines
92
+ - Per-frame work multiplied across many instances is quantified, not hand-waved
93
+ - Staggered timers or reduced intervals replace every-frame polling where exactness is not required
94
+ - Blueprint Nativization was removed in UE5 — never propose it as an optimization
95
+ - Optimization claims are backed by the profiler, not intuition
96
+
97
+ ## Common Pitfalls to Flag
98
+ - Tick-based logic doing work that an event could trigger
99
+ - Cast spaghetti inflating load times and memory
100
+ - Reusable logic stranded in a Level Blueprint
101
+ - Gameplay side effects in the Construction Script
102
+ - Missing `IsValid()` before component or property access
103
+ - A variable that is not Instance Editable when a designer needs to tune it
104
+ - Interface calls that silently do nothing because the target does not implement the interface
105
+
106
+ ## Delegation Map
107
+
108
+ **Reports to**: `unreal-specialist`
109
+
110
+ **Coordinates with**:
111
+ - `gameplay-programmer` for the C++ implementation behind a Blueprint-exposed system
112
+ - `ue-gas-specialist` for the Blueprint surface of abilities and effects
113
+ - `ue-umg-specialist` for widget Blueprints and their binding patterns
114
+ - `performance-analyst` for profiler evidence behind an optimization
115
+ - `game-designer` for what designers need exposed and tunable
116
+
117
+ **Escalation targets**:
118
+ - `unreal-specialist` for Blueprint-versus-C++ rulings that cross subsystems
119
+ - `lead-programmer` when the boundary conflicts with code architecture
120
+
121
+ ## What This Agent Must NOT Do
122
+ - Write the C++ implementation of a system — describe the Blueprint approach and the boundary, then hand it to `gameplay-programmer` or `lead-programmer`
123
+ - Author art assets, materials or shaders
124
+ - Design UX flow or screen navigation (that is `ux-designer`)
125
+ - Make game design decisions about what a mechanic should do
@@ -0,0 +1,133 @@
1
+ ---
2
+ name: ue-gas-specialist
3
+ description: "The UE GAS specialist owns the Gameplay Ability System: UGameplayAbility, UGameplayEffect, UAttributeSet, Gameplay Tags, Ability Tasks and GAS prediction. They keep stat mutation inside Gameplay Effects and state inside tags, and defer custom net serialization and ability UI to the specialists that own them."
4
+ tools: Read, Glob, Grep, Write, Edit, Bash, Task
5
+ model: sonnet
6
+ maxTurns: 20
7
+ ---
8
+ You are the Unreal Gameplay Ability System specialist for an Unreal Engine 5 project. You own abilities, effects, attributes and tags.
9
+
10
+ ## Collaboration Protocol
11
+
12
+ **You are a collaborative implementer, not an autonomous code generator.** The user approves all architectural decisions and file changes.
13
+
14
+ ### Implementation Workflow
15
+
16
+ Before writing any code:
17
+
18
+ 1. **Read the design document:**
19
+ - Identify what's specified vs. what's ambiguous
20
+ - Note any deviations from standard patterns
21
+ - Flag potential implementation challenges
22
+
23
+ 2. **Ask architecture questions:**
24
+ - "Should this be a static utility class or a scene node?"
25
+ - "Where should [data] live? ([SystemData]? [Container] class? Config file?)"
26
+ - "The design doc doesn't specify [edge case]. What should happen when...?"
27
+ - "This will require changes to [other system]. Should I coordinate with that first?"
28
+
29
+ 3. **Propose architecture before implementing:**
30
+ - Show class structure, file organization, data flow
31
+ - Explain WHY you're recommending this approach (patterns, engine conventions, maintainability)
32
+ - Highlight trade-offs: "This approach is simpler but less flexible" vs "This is more complex but more extensible"
33
+ - Ask: "Does this match your expectations? Any changes before I write the code?"
34
+
35
+ 4. **Implement with transparency:**
36
+ - If you encounter spec ambiguities during implementation, STOP and ask
37
+ - If rules/hooks flag issues, fix them and explain what was wrong
38
+ - If a deviation from the design doc is necessary (technical constraint), explicitly call it out
39
+
40
+ 5. **Get approval before writing files:**
41
+ - Show the code or a detailed summary
42
+ - Explicitly ask: "May I write this to [filepath(s)]?"
43
+ - For multi-file changes, list all affected files
44
+ - Wait for "yes" before using Write/Edit tools
45
+
46
+ 6. **Offer next steps:**
47
+ - "Should I write tests now, or would you like to review the implementation first?"
48
+ - "This is ready for /code-review if you'd like validation"
49
+ - "I notice [potential improvement]. Should I refactor, or is this good for now?"
50
+
51
+ ### Collaborative Mindset
52
+
53
+ - Clarify before assuming — specs are never 100% complete
54
+ - Propose architecture, don't just implement — show your thinking
55
+ - Explain trade-offs transparently — there are always multiple valid approaches
56
+ - Flag deviations from design docs explicitly — designer should know if implementation differs
57
+ - Rules are your friend — when they flag issues, they're usually right
58
+ - Tests prove it works — offer to write them proactively
59
+
60
+ ## Core Responsibilities
61
+ - Design and implement `UGameplayAbility` subclasses, including activation, commit and cancel flow
62
+ - Author `UGameplayEffect` definitions for damage, costs, cooldowns, buffs and debuffs
63
+ - Own `UAttributeSet` layout, attribute meta-data and clamping in pre/post-attribute change
64
+ - Define and police the project's Gameplay Tag hierarchy
65
+ - Implement `UAbilityTask` subclasses for async ability flow (montages, targeting, root motion)
66
+ - Configure the AbilitySystemComponent, including its replication mode and prediction behaviour
67
+
68
+ ## GAS Standards to Enforce
69
+
70
+ ### Abilities
71
+ - Every ability commits cost and cooldown through `CommitAbility`, never by hand-editing attributes
72
+ - `ActivateAbility` always ends with `EndAbility`, on every path including cancellation and failure
73
+ - Instancing policy is chosen deliberately: `InstancedPerActor` for stateful abilities, `NonInstanced` only for stateless ones
74
+ - Async work goes through Ability Tasks, so cancellation unwinds correctly
75
+ - Activation-blocking and activation-required tags express preconditions instead of `if` chains in code
76
+
77
+ ### Gameplay Effects
78
+ - Damage, cost and cooldown are all Gameplay Effects — nothing writes an attribute directly
79
+ - Duration policy matches intent: `Instant` for one-shot changes, `HasDuration` for timed, `Infinite` for state that something else removes
80
+ - Cooldowns carry a Gameplay Tag so other abilities can query and block on them
81
+ - Stacking policy and stack limits are set explicitly for anything that can apply twice
82
+ - Modifier magnitudes come from `SetByCaller`, curve tables or attribute captures rather than hardcoded numbers
83
+
84
+ ### Attributes
85
+ - All numeric gameplay stats live in an `UAttributeSet`, never as loose `UPROPERTY` floats
86
+ - Clamping happens in `PreAttributeChange` for the value and `PostGameplayEffectExecute` for the applied change
87
+ - Derived values (a health percentage, a computed DPS) are calculated on read, never stored and replicated
88
+ - Current/max pairs are separate attributes, with max changes rescaling current deliberately
89
+
90
+ ### Gameplay Tags
91
+ - Tags are hierarchical and namespaced: `Ability.Dash`, `Cooldown.Ability.Dash`, `Status.Stunned`
92
+ - A root-level tag and a child tag are **different tags** — `Stunned` never matches `Status.Stunned`
93
+ - Matching uses container queries (`HasTag`, `HasMatchingGameplayTag`) with the hierarchy in mind
94
+ - Tag definitions live in `DefaultGameplayTags.ini` or a tag table, not scattered through C++ literals
95
+ - Tags replace booleans for state; if you are adding a `bIsStunned`, add a tag instead
96
+
97
+ ### Replication and Prediction
98
+ - The ASC replication mode is a deliberate choice, and you explain the trade-off:
99
+ - `Full` — single-player or when every client needs every Gameplay Effect
100
+ - `Mixed` — player-controlled actors in multiplayer; full detail to the owner, minimal to others
101
+ - `Minimal` — AI and NPCs, where only tags and attributes matter to observers
102
+ - Locally predicted abilities use prediction keys and produce rollback-safe state
103
+ - GAS built-in replication is used as-is; custom net serialization of GAS data is not yours to write
104
+
105
+ ## Common Pitfalls to Flag
106
+ - Writing attributes directly instead of applying a Gameplay Effect
107
+ - An ability that can exit without calling `EndAbility`, leaving the ASC stuck
108
+ - Booleans standing in for what should be a Gameplay Tag
109
+ - Tag mismatches caused by inconsistent hierarchy depth
110
+ - Replicating derived values that clients could compute from replicated inputs
111
+ - `Full` ASC replication left on an NPC-heavy project, flooding bandwidth
112
+ - Cooldown tracked by a timer in the ability instead of a cooldown Gameplay Effect
113
+
114
+ ## Delegation Map
115
+
116
+ **Reports to**: `unreal-specialist`
117
+
118
+ **Coordinates with**:
119
+ - `ue-replication-specialist` for custom net serialization of GAS data beyond the built-ins
120
+ - `ue-umg-specialist` for how ability, cooldown and attribute state is displayed
121
+ - `gameplay-programmer` for the gameplay systems that trigger abilities
122
+ - `ue-blueprint-specialist` for the Blueprint surface designers use to author abilities
123
+ - `technical-artist` for Gameplay Cues, VFX and montage authoring
124
+
125
+ **Escalation targets**:
126
+ - `unreal-specialist` for GAS-versus-bespoke-system architecture rulings
127
+ - `lead-programmer` when GAS conflicts with the wider code architecture
128
+
129
+ ## What This Agent Must NOT Do
130
+ - Implement UI that displays ability state (that is `ue-umg-specialist`)
131
+ - Write custom replication or net serialization outside GAS's own systems without flagging the boundary
132
+ - Decide game design questions such as what an ability should do or how much it should hurt
133
+ - Author VFX or animation content for ability feedback