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
@@ -1,8 +1,8 @@
1
1
  # Skills Catalog — Claude Code Arcane
2
2
 
3
- Los 397 skills disponibles para proyectos consumidores, organizados por division.
3
+ Los 427 skills disponibles para proyectos consumidores, organizados por division.
4
4
 
5
- La tabla cubre 355: hay 42 skills instalables que todavia no estan catalogados aca. Un test de CI (`src/__tests__/doc-counts.test.ts`) verifica que estos numeros coincidan con el filesystem y que el header de cada seccion coincida con sus filas.
5
+ La tabla cubre 385: hay 42 skills instalables que todavia no estan catalogados aca. Un test de CI (`src/__tests__/doc-counts.test.ts`) verifica que estos numeros coincidan con el filesystem y que el header de cada seccion coincida con sus filas.
6
6
 
7
7
  ## Como ejecutar un skill
8
8
 
@@ -84,7 +84,7 @@ Desde cualquier proyecto que tenga Arcane configurado, escribi `/` seguido del n
84
84
  | `/consistency-check` | Detecta inconsistencias cross-documento en stats/items | `[full \| since-last \| entity:<name>]` |
85
85
  | `/doc-gdd` | Genera Game Design Document completo | `[game-name]` |
86
86
  | `/doc-pas` | Documentacion PAS (Problem-Analysis-Solution) | `[problem o decision title]` |
87
- | `/install-mcp` | Instala y registra el MCP de Unity (CoplayDev) en el proyecto | `[--secondary] [project-path]` |
87
+ | `/install-mcp` | Conecta Claude con el MCP del engine: Unity (package UPM) o Unreal (plugins del engine) | `[unity\|unreal] [--secondary] [path]` |
88
88
  | `/map-systems` | Descompone concepto en sistemas, mapea dependencias | `[next \| system-name] [--review]` |
89
89
  | `/playtest-report` | Genera o analiza reporte de playtest | `[new\|analyze path] [--review]` |
90
90
  | `/scaffold-unity` | Scaffoldea proyecto Unity estilo Project_T | `[project-name]` |
@@ -100,6 +100,45 @@ Desde cualquier proyecto que tenga Arcane configurado, escribi `/` seguido del n
100
100
 
101
101
  ---
102
102
 
103
+ ## Unreal (30 skills)
104
+
105
+ Instalables con el perfil `unreal-dev`. Procedencia y licencias en `ATTRIBUTION.md`.
106
+
107
+ | Skill | Descripcion | Uso |
108
+ |-------|-------------|-----|
109
+ | `/ue-project-context` | Documento de contexto del proyecto: modulos, plataformas, convenciones, standards | `[new \| update \| section]` |
110
+ | `/ue-naming-conventions` | Naming de assets y estructura de Content: Prefix_BaseAssetName_Variant_Suffix, prefijos por tipo, layout de carpetas | `[asset, folder o review]` |
111
+ | `/ue-cpp-foundations` | UPROPERTY, UFUNCTION, UCLASS, TArray, TMap, delegates, FString, garbage collection | `[class, type o question]` |
112
+ | `/ue-actor-component-architecture` | Diseno de actors y components: BeginPlay, Tick, attachment, ownership, child actors | `[actor o component]` |
113
+ | `/ue-gameplay-framework` | GameMode, GameState, PlayerController, PlayerState, Pawn, HUD | `[class o flow]` |
114
+ | `/ue-module-build-system` | Build.cs, Target.cs, creacion de modulos, setup de plugins, configuracion de build | `[module o plugin]` |
115
+ | `/ue-async-threading` | Operaciones async, threading, ejecucion paralela, tasks, FRunnable, AsyncTask | `[operation o task]` |
116
+ | `/ue-blueprints` | Blueprint visual scripting: Event Graph, Construction Script, Cast vs Interface vs Dispatcher | `[blueprint o graph]` |
117
+ | `/ue-gameplay-abilities` | GAS: Gameplay Abilities, Effects, Attribute Sets, Tags, Gameplay Cues | `[ability, effect o attribute]` |
118
+ | `/ue-character-movement` | CharacterMovementComponent, movement modes, root motion, network prediction | `[movement mode o feature]` |
119
+ | `/ue-animation-system` | AnimInstance, montages, blend spaces, state machines, notifies, linked anim graphs | `[character o anim feature]` |
120
+ | `/ue-physics-collision` | Colisiones, traces, simulacion fisica, interacciones, Chaos physics | `[interaction o collision setup]` |
121
+ | `/ue-game-features` | Game Feature plugins, modular gameplay, GameFeatureAction, ComponentManager | `[plugin o experience]` |
122
+ | `/ue-networking-replication` | Multiplayer: replication, RPCs, net roles, autoridad server/client | `[system o property]` |
123
+ | `/ue-ai-navigation` | AI controllers, behavior trees, blackboards, perception, NavMesh, EQS | `[behavior o AI feature]` |
124
+ | `/ue-state-trees` | State Tree, state machines, StateTreeTask, Condition, Evaluator | `[state tree o behavior]` |
125
+ | `/ue-mass-entity` | Mass Entity: MassProcessor, MassFragment, MassTag, MassObserver (UE 5.5+) | `[system o entity type]` |
126
+ | `/ue-materials-rendering` | Materials, shaders, dynamic instances, post-process, render targets, Nanite, Lumen | `[material o effect]` |
127
+ | `/ue-niagara-effects` | Niagara: sistemas de particulas, VFX, emitters, data interfaces, simulacion GPU | `[effect o system]` |
128
+ | `/ue-audio-system` | UAudioComponent, SoundCue, MetaSound, atenuacion, concurrencia, analisis | `[sound o audio system]` |
129
+ | `/ue-sequencer-cinematics` | Sequencer, LevelSequence, cutscenes, camera tracks, Movie Render Queue | `[sequence o shot]` |
130
+ | `/ue-world-level-streaming` | World Partition, level streaming, level travel, data layers, world subsystems | `[level o streaming strategy]` |
131
+ | `/ue-procedural-generation` | PCG framework, ProceduralMesh, instanced mesh, generacion en runtime, noise | `[generator o PCG graph]` |
132
+ | `/ue-data-assets-tables` | DataAsset, DataTable, soft references, TSoftObjectPtr, async loading, Asset Manager | `[data type o asset]` |
133
+ | `/ue-serialization-savegames` | Save/load, persistencia de progreso, serializacion de datos, FArchive | `[save system o data]` |
134
+ | `/ue-ui-umg-slate` | UMG, Slate, UserWidget, HUD, BindWidget, Common UI, MVVM | `[widget o UI flow]` |
135
+ | `/ue-input-system` | Enhanced Input: Input Actions, Mapping Contexts, modifiers, triggers | `[action o input scheme]` |
136
+ | `/ue-editor-tools` | Editor utility widgets, Blutility, detail customization, property editors, subsystems | `[tool o customization]` |
137
+ | `/ue-testing-debugging` | Automation tests, functional tests, UE_LOG, visual logger, debug drawing | `[test o debug target]` |
138
+ | `/ue-packaging` | Packaging y cooking: build configs, Game Default Map, RunUAT BuildCookRun | `[platform o build config]` |
139
+
140
+ ---
141
+
103
142
  ## Audio (13 skills)
104
143
 
105
144
  | Skill | Descripcion | Uso |
@@ -2,7 +2,7 @@
2
2
 
3
3
  ## What is Arcane?
4
4
 
5
- Arcane is a configuration harness for [Claude Code](https://docs.anthropic.com/en/docs/claude-code). It provides a curated library of **397 skills**, **106 agents**, **16 hooks**, and **27 rules** that you selectively deploy into any project. Instead of shipping everything to every project (wasting tokens and degrading performance), you pick a **profile** that matches your stack and only the relevant tools get installed.
5
+ Arcane is a configuration harness for [Claude Code](https://docs.anthropic.com/en/docs/claude-code). It provides a curated library of **427 skills**, **109 agents**, **17 hooks**, and **28 rules** that you selectively deploy into any project. Instead of shipping everything to every project (wasting tokens and degrading performance), you pick a **profile** that matches your stack and only the relevant tools get installed.
6
6
 
7
7
  ## Table of Contents
8
8
 
@@ -11,8 +11,7 @@ Arcane is a configuration harness for [Claude Code](https://docs.anthropic.com/e
11
11
  - [Quick Start](#quick-start)
12
12
  - [Commands Reference](#commands-reference)
13
13
  - [Profiles](#profiles)
14
- - [Base Profiles](#base-profiles)
15
- - [Add-on Profiles](#add-on-profiles)
14
+ - [Profile Catalog](#profile-catalog)
16
15
  - [Core (always included)](#core-always-included)
17
16
  - [Profile Composition](#profile-composition)
18
17
  - [Adding and Removing Skills](#adding-and-removing-skills)
@@ -65,7 +64,8 @@ Your project now has skills, agents, hooks, rules, and permissions tailored for
65
64
  ### `npx claude-code-arcane install` — Install profiles
66
65
 
67
66
  ```bash
68
- # Show available profiles (interactive)
67
+ # Interactive picker: detects your stack, pre-selects matching profiles,
68
+ # and lets you add more from a menu grouped by category
69
69
  npx claude-code-arcane install
70
70
 
71
71
  # Install a specific profile
@@ -95,7 +95,7 @@ npx claude-code-arcane add api-design
95
95
  # Add multiple skills
96
96
  npx claude-code-arcane add security-audit owasp
97
97
 
98
- # Add an entire profile as addon
98
+ # Add an entire profile
99
99
  npx claude-code-arcane add +security
100
100
 
101
101
  # Add multiple profiles
@@ -131,7 +131,7 @@ What gets deleted is read from that profile's definition, so `remove` uses the c
131
131
  npx claude-code-arcane list
132
132
  ```
133
133
 
134
- Shows all base profiles and add-ons with descriptions, and marks which are currently installed.
134
+ Shows all profiles grouped by category, with descriptions, and marks which are currently installed.
135
135
 
136
136
  ### `npx claude-code-arcane status` — Check current installation
137
137
 
@@ -197,46 +197,21 @@ npx claude-code-arcane global --remove
197
197
 
198
198
  ## Profiles
199
199
 
200
- ### Base Profiles
201
-
202
- Base profiles define the primary stack for a project. Pick one or combine multiple.
203
-
204
- | Profile | Stack | Skills | Agents |
205
- |---------|-------|--------|--------|
206
- | `unity-dev` | Unity programmer — C#, architecture, performance, builds | 25 | game |
207
- | `unity-design` | Game designer — GDDs, balance, art bible, playtesting | 17 | game |
208
- | `backend-ts` | Backend TypeScript — Fastify, Prisma, Zod, API design | 33 | engineering |
209
- | `backend-go` | Backend Go — Clean Arch, DB, auth, API, CI | 19 | engineering |
210
- | `frontend` | React + Vite + TypeScript | 14 | engineering |
211
- | `mobile` | React Native + Expo + TypeScript | 12 | engineering |
212
- | `flutter` | Flutter + Dart cross-platform | 8 | engineering |
213
- | `android-native` | Kotlin + Jetpack Compose + Material Design 3 | 8 | engineering |
214
- | `ios-native` | Swift + UIKit/SwiftUI + Apple HIG | 8 | engineering |
215
-
216
- ### Add-on Profiles
217
-
218
- Add-ons extend a base profile with extra capabilities. Combine them with `+`.
219
-
220
- | Add-on | Adds | Skills | Agents |
221
- |--------|------|--------|--------|
222
- | `+agile` | Sprints, standups, retros, estimates | 10 | management, product |
223
- | `+docs` | PDF, PPTX, XLSX, DOCX, architecture decisions | 8 | — |
224
- | `+testing` | Contract, performance, regression, flakiness | 11 | quality |
225
- | `+infra` | Terraform, observability, secrets, rollback, K8s | 17 | devops |
226
- | `+database` | Indexing, migrations, seeding, replicas, optimization | 8 | — |
227
- | `+security` | Audits, OWASP, secrets, backups | 5 | — |
228
- | `+design` | Figma, UX review, design system, handoff | 6 | product |
229
- | `+integrations` | GitHub Projects, Slack, Postman | 3 | integrations |
230
- | `+clickup` | ClickUp via MCP — tasks, docs, time tracking | 3 | — |
231
- | `+jira` | Jira via REST API — issues, sprints, boards | 3 | — |
232
- | `+ai` | LLM cost optimization, RAG, ML, data engineering | 7 | ai |
233
- | `+business` | Contracts, customer success, revenue ops, sales | 4 | business |
234
- | `+clevel` | C-suite advisors, board prep, strategic ops | 28 | clevel |
235
- | `+finance` | Investment analysis, financial modeling, SaaS metrics | 3 | business |
236
- | `+marketing` | Content, growth, SEO/CRO, strategy, analytics | 44 | marketing |
237
- | `+regulatory` | ISO 13485, GDPR, FDA, SOC 2, ISMS, QMS, MDR | 13 | regulatory |
238
- | `+self-improving` | Agent self-improvement and skill extraction | 2 | — |
239
- | `+statusline` | Claude Code status bar (branch, division, session info) | 0 | — |
200
+ ### Profile Catalog
201
+
202
+ All profiles are equal — pick any combination that fits your work. They are grouped by category for discovery (same grouping the interactive picker and `list` use). The full per-profile detail lives in the [README](../README.md#available-profiles); summary by category:
203
+
204
+ | Category | Profiles |
205
+ |----------|----------|
206
+ | **Backend** | `backend-ts`, `backend-go`, `backend-dotnet`, `backend-nestjs`, `backend-nextjs` |
207
+ | **Frontend & Design** | `frontend`, `design` |
208
+ | **Mobile** | `mobile`, `flutter`, `android-native`, `ios-native` |
209
+ | **Gamedev** | `unity-dev`, `unity-design`, `unreal-dev`, `visual-novel`, `audio` |
210
+ | **Platform & Quality** | `infra`, `database`, `security`, `testing`, `ai` |
211
+ | **Project Management** | `agile`, `jira`, `clickup`, `integrations` |
212
+ | **Business** | `business`, `clevel`, `finance`, `marketing`, `ecommerce`, `regulatory` |
213
+ | **Personal** | `second-brain`, `job-hunt`, `freelance` |
214
+ | **Utilities** | `docs`, `self-improving`, `statusline` |
240
215
 
241
216
  ### Core (always included)
242
217
 
@@ -257,17 +232,16 @@ Every installation automatically loads `core.yaml` first:
257
232
  Profiles are combined using the `+` separator. The system deduplicates skills automatically.
258
233
 
259
234
  ```bash
260
- npx claude-code-arcane install <base>[+<base>][+<addon>][+<addon>]
235
+ npx claude-code-arcane install <profile>[+<profile>][+<profile>...]
261
236
  ```
262
237
 
263
238
  ### Rules
264
239
 
265
240
  1. **Always explicit** — there is no "full" or "all" profile. You choose what you need.
266
241
  2. **Core is automatic** — the 21 universal skills and all hooks are always included.
267
- 3. **Multiple bases are OK** — combine `unity-dev+unity-design` or `backend-go+frontend`.
268
- 4. **Add-ons extend** — `+agile`, `+clickup`, etc. add capabilities to any base.
269
- 5. **Deduplication is automatic** — overlapping skills across profiles are installed once.
270
- 6. **Replace, not merge** — installing a new profile replaces the previous one entirely (with backup).
242
+ 3. **All profiles combine freely** — `unity-dev+unity-design`, `backend-go+frontend`, or `backend-ts+agile+testing`; there is no required "base".
243
+ 4. **Deduplication is automatic** — overlapping skills across profiles are installed once.
244
+ 5. **Replace, not merge** — installing a new profile replaces the previous one entirely (with backup).
271
245
 
272
246
  ---
273
247
 
@@ -278,7 +252,7 @@ After the initial install, you can incrementally add or remove skills and profil
278
252
  ### Add workflow
279
253
 
280
254
  ```bash
281
- # Start with a base profile
255
+ # Start with a profile
282
256
  npx claude-code-arcane install backend-ts
283
257
 
284
258
  # Later, add testing and security
@@ -506,7 +480,7 @@ mv ~/projects/my-game/.claude.bak ~/projects/my-game/.claude
506
480
 
507
481
  ## FAQ
508
482
 
509
- ### Can I use multiple base profiles together?
483
+ ### Can I combine multiple stack profiles?
510
484
 
511
485
  Yes. `backend-go+frontend` gives you both Go backend and React frontend skills. Duplicate skills are automatically deduplicated.
512
486
 
@@ -541,7 +515,7 @@ Yes, and it's recommended. This way everyone on the team gets the same Claude Co
541
515
 
542
516
  ### How many tokens does a profile consume?
543
517
 
544
- Each skill adds ~30-100 tokens to the system prompt. A typical base profile (20-30 skills) adds ~1-2k tokens. The core profile adds ~500 tokens. Compare that to loading all 397 skills, which is why selective deploy matters.
518
+ Each skill adds ~30-100 tokens to the system prompt. A typical stack profile (20-30 skills) adds ~1-2k tokens. The core profile adds ~500 tokens. Compare that to loading all 427 skills, which is why selective deploy matters.
545
519
 
546
520
  ### Why replace instead of merge on install?
547
521
 
@@ -0,0 +1,90 @@
1
+ #!/usr/bin/env bash
2
+ # SessionStart hook: inject a short note identifying the session as operating inside
3
+ # an Unreal Engine project, so Claude defaults to UE conventions and reaches for the
4
+ # ue-* skills. Walks upward from $PWD so sessions started in a subdirectory
5
+ # (Source/, Content/, Plugins/, ...) are still detected.
6
+ #
7
+ # Adapted from EpicGames/unreal-engine-skills-for-claude-code-plugin (MIT).
8
+ # Opt-in debug logging: set CLAUDE_UE_HOOK_DEBUG to any non-empty value.
9
+ set +e
10
+
11
+ debug() {
12
+ [[ -n "$CLAUDE_UE_HOOK_DEBUG" ]] && echo "detect-unreal.sh: $*" >&2
13
+ }
14
+
15
+ is_project_root() {
16
+ # Reliable top-level markers only. A bare `Engine` directory is NOT a marker: the
17
+ # Unreal source tree contains an `Engine` module at Engine/Source/Runtime/Engine,
18
+ # so walking up from a Runtime module would otherwise short-circuit at
19
+ # Source/Runtime and mis-identify it as the root.
20
+ local directory="$1"
21
+ [[ -f "$directory/GenerateProjectFiles.bat" ]] && return 0
22
+ [[ -f "$directory/GenerateProjectFiles.sh" ]] && return 0
23
+ [[ -f "$directory/GenerateProjectFiles.command" ]] && return 0
24
+ for candidate in "$directory"/*.uproject; do
25
+ [[ -e "$candidate" ]] && return 0
26
+ done
27
+ return 1
28
+ }
29
+
30
+ find_project_root() {
31
+ local directory="$1"
32
+ while [[ -n "$directory" ]]; do
33
+ if is_project_root "$directory"; then
34
+ echo "$directory"
35
+ return 0
36
+ fi
37
+ local parent
38
+ parent="$(dirname "$directory")"
39
+ [[ "$parent" == "$directory" ]] && break
40
+ directory="$parent"
41
+ done
42
+ return 1
43
+ }
44
+
45
+ main() {
46
+ local project_root
47
+ project_root="$(find_project_root "$PWD")"
48
+ if [[ -z "$project_root" ]]; then
49
+ debug "no Unreal Engine project marker found walking up from $PWD"
50
+ return 0
51
+ fi
52
+
53
+ local project_type="game"
54
+ [[ -d "$project_root/Engine" ]] && project_type="engine"
55
+
56
+ local uproject_filename=""
57
+ for candidate in "$project_root"/*.uproject; do
58
+ if [[ -e "$candidate" ]]; then
59
+ uproject_filename="$(basename "$candidate")"
60
+ break
61
+ fi
62
+ done
63
+
64
+ debug "project root: $project_root (type=$project_type, uproject=$uproject_filename)"
65
+
66
+ local context="This working directory is an Unreal Engine project."
67
+ if [[ "$project_type" == "engine" ]]; then
68
+ context="$context It is an Engine source tree."
69
+ elif [[ -n "$uproject_filename" ]]; then
70
+ context="$context The project is \`$uproject_filename\`."
71
+ fi
72
+ context="$context Prefer Unreal Engine conventions (C++/UObject patterns, Slate, UHT reflection) when suggesting code."
73
+ context="$context Arcane ships ue-* skills for this stack; run /ue-project-context first if docs/unreal/project-context.md does not exist yet."
74
+ context="$context Unreal ships its own MCP server as engine plugins; run /install-mcp to enable and connect it."
75
+
76
+ if [[ -f "$project_root/.mcp.json" ]]; then
77
+ context="$context An \`.mcp.json\` is already present at the project root."
78
+ else
79
+ context="$context No \`.mcp.json\` is present yet. Run \`ModelContextProtocol.GenerateClientConfig ClaudeCode\` in the editor console to generate one."
80
+ fi
81
+
82
+ # JSON-escape the dynamic content: backslash first, then double quote.
83
+ local escaped="${context//\\/\\\\}"
84
+ escaped="${escaped//\"/\\\"}"
85
+
86
+ printf '{"hookSpecificOutput":{"hookEventName":"SessionStart","additionalContext":"%s"}}\n' "$escaped"
87
+ }
88
+
89
+ main 2>/dev/null
90
+ exit 0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-code-arcane",
3
- "version": "2.3.0",
3
+ "version": "2.5.0",
4
4
  "description": "Skills, agents, hooks and rules for Claude Code — installable via npx claude-code-arcane",
5
5
  "type": "module",
6
6
  "bin": {
@@ -42,6 +42,7 @@
42
42
  "access": "public"
43
43
  },
44
44
  "dependencies": {
45
+ "@clack/prompts": "^1.7.0",
45
46
  "chalk": "^5.3.0",
46
47
  "commander": "^12.1.0",
47
48
  "js-yaml": "^4.1.0",
@@ -1,6 +1,6 @@
1
1
  name: agile
2
2
  description: "Gestión de proyecto — sprints, standups, retros, estimates"
3
- type: addon
3
+ category: management
4
4
 
5
5
  skills:
6
6
  - gh-projects
package/profiles/ai.yaml CHANGED
@@ -1,6 +1,6 @@
1
1
  name: ai
2
2
  description: "AI & ML — LLM optimization, RAG, computer vision, data engineering, prompt engineering"
3
- type: addon
3
+ category: platform
4
4
 
5
5
  skills:
6
6
  - llm-cost-optimizer
@@ -1,6 +1,6 @@
1
1
  name: android-native
2
2
  description: "Android native — Kotlin + Jetpack Compose + Material Design 3"
3
- type: base
3
+ category: mobile
4
4
 
5
5
  skills:
6
6
  - testing
@@ -1,6 +1,6 @@
1
1
  name: audio
2
2
  description: "Game Audio — direccion sonora, composicion, sound design, middleware, VO y QA"
3
- type: base
3
+ category: gamedev
4
4
 
5
5
  skills:
6
6
  - audio-bible
@@ -1,6 +1,6 @@
1
1
  name: backend-dotnet
2
2
  description: "Backend .NET — ASP.NET Core (.NET 10), Vertical Slice / Clean Architecture, EF Core + PostgreSQL, JWT + Identity, testing. Best practices priorizadas por impacto."
3
- type: base
3
+ category: backend
4
4
 
5
5
  skills:
6
6
  # .NET-specific (nuevas)
@@ -1,6 +1,6 @@
1
1
  name: backend-go
2
2
  description: "Backend Go — scaffold, DB, auth, API design, CI"
3
- type: base
3
+ category: backend
4
4
 
5
5
  skills:
6
6
  - test-setup
@@ -1,6 +1,6 @@
1
1
  name: backend-nestjs
2
2
  description: "Backend NestJS — feature modules, DI, guards/pipes, Prisma, JWT, testing, microservicios. Best practices priorizadas por impacto."
3
- type: base
3
+ category: backend
4
4
 
5
5
  skills:
6
6
  # NestJS-specific (nuevas)
@@ -1,6 +1,6 @@
1
1
  name: backend-nextjs
2
2
  description: "Next.js full-stack — App Router, RSC, Server Actions, SEO, AI SDK, performance (64 reglas de Vercel). Front + back en un solo runtime."
3
- type: base
3
+ category: backend
4
4
 
5
5
  skills:
6
6
  # Next.js-specific (nuevas)
@@ -1,6 +1,6 @@
1
1
  name: backend-ts
2
2
  description: "Backend TypeScript — Fastify, Prisma, Zod, API design, CI"
3
- type: base
3
+ category: backend
4
4
 
5
5
  skills:
6
6
  - testing
@@ -1,6 +1,6 @@
1
1
  name: business
2
2
  description: "Business — contracts, customer success, revenue ops, sales engineering"
3
- type: addon
3
+ category: business
4
4
 
5
5
  skills:
6
6
  - contract-and-proposal-writer
@@ -1,6 +1,6 @@
1
1
  name: clevel
2
2
  description: "C-Level — executive advisors, board prep, strategic operations, org health"
3
- type: addon
3
+ category: business
4
4
 
5
5
  skills:
6
6
  - ceo-advisor
@@ -1,6 +1,6 @@
1
1
  name: clickup
2
2
  description: "ClickUp via MCP — tasks, docs, time tracking"
3
- type: addon
3
+ category: management
4
4
 
5
5
  skills:
6
6
  - clickup
@@ -1,6 +1,6 @@
1
1
  name: core
2
2
  description: "Skills universales, hooks y rules base"
3
- type: base
3
+ category: core
4
4
 
5
5
  skills:
6
6
  - commit
@@ -1,6 +1,6 @@
1
1
  name: database
2
2
  description: "Database avanzado — indexing, migrations, seeding, replicas"
3
- type: addon
3
+ category: platform
4
4
 
5
5
  skills:
6
6
  - database-indexing
@@ -1,6 +1,6 @@
1
1
  name: design
2
2
  description: "Figma workflow, UX review, handoff a dev"
3
- type: addon
3
+ category: frontend
4
4
 
5
5
  skills:
6
6
  - user-persona
@@ -1,6 +1,6 @@
1
1
  name: docs
2
2
  description: "Document generation — PDF, PPTX, XLSX, DOCX, architecture"
3
- type: addon
3
+ category: utilities
4
4
 
5
5
  skills:
6
6
  - pdf-generator
@@ -1,6 +1,6 @@
1
1
  name: ecommerce
2
2
  description: "E-Commerce — dominio commerce end-to-end agnostico de lenguaje: data model, carrito/checkout, inventario, ordenes, pagos, promociones, shipping/tax, listings, analytics, feeds, storefront y suscripciones"
3
- type: addon
3
+ category: business
4
4
 
5
5
  skills:
6
6
  # net-new (12)
@@ -1,6 +1,6 @@
1
1
  name: finance
2
2
  description: "Finance — investment analysis, financial modeling, SaaS metrics"
3
- type: addon
3
+ category: business
4
4
 
5
5
  skills:
6
6
  - business-investment-advisor
@@ -1,6 +1,6 @@
1
1
  name: flutter
2
2
  description: "Flutter + Dart cross-platform development"
3
- type: base
3
+ category: mobile
4
4
 
5
5
  skills:
6
6
  - testing
@@ -1,6 +1,6 @@
1
1
  name: freelance
2
2
  description: "Freelance — conseguir proyectos como freelancer y ejecutarlos: scan de fuentes publicas sin API key con dedup y scoring, busqueda en los marketplaces (Upwork, Workana) via WebSearch, inteligencia de tarifas de mercado, screening de riesgo del cliente, perfil de plataforma, propuestas con cotizacion sobre piso de tarifa neto, contratos y SOWs, kickoff con validacion de horas contra lo cotizado, registro de horas y change orders, pipeline con costo de adquisicion y utilizacion, y 4 agentes de contexto fresco (review de propuesta, screener adversarial, discovery call, estratega de pipeline)"
3
- type: addon
3
+ category: personal
4
4
 
5
5
  skills:
6
6
  # Nucleo del perfil
@@ -1,6 +1,6 @@
1
1
  name: frontend
2
2
  description: "Frontend React + Vite + TypeScript"
3
- type: base
3
+ category: frontend
4
4
 
5
5
  skills:
6
6
  - testing
@@ -1,6 +1,6 @@
1
1
  name: infra
2
2
  description: "DevOps/Platform/Ops — deploy, observability, secrets, rollback"
3
- type: addon
3
+ category: platform
4
4
 
5
5
  skills:
6
6
  - observability
@@ -1,6 +1,6 @@
1
1
  name: integrations
2
2
  description: "Integraciones externas — GitHub Projects, Slack, Postman"
3
- type: addon
3
+ category: management
4
4
 
5
5
  skills:
6
6
  - gh-projects
@@ -1,6 +1,6 @@
1
1
  name: ios-native
2
2
  description: "iOS native — Swift + UIKit/SwiftUI + Apple HIG"
3
- type: base
3
+ category: mobile
4
4
 
5
5
  skills:
6
6
  - testing
@@ -1,6 +1,6 @@
1
1
  name: jira
2
2
  description: "Jira via curl/REST API — issues, sprints, boards"
3
- type: addon
3
+ category: management
4
4
 
5
5
  skills:
6
6
  - jira-tickets
@@ -1,6 +1,6 @@
1
1
  name: job-hunt
2
2
  description: "Job Hunt — busqueda laboral end-to-end: perfil maestro, CV ATS con verificacion, scraping de ofertas con dedup, pipeline de postulacion, LinkedIn, portfolio, cover letters, outreach a recruiters, scoring de ofertas, gaps/upskill, prep de entrevistas y 4 agentes de contexto fresco (review de CV, hiring manager, mock interview, diagnostico del embudo)"
3
- type: addon
3
+ category: personal
4
4
 
5
5
  skills:
6
6
  - job-hunt
@@ -1,6 +1,6 @@
1
1
  name: marketing
2
2
  description: "Marketing — content, growth, SEO/CRO, strategy, analytics, social media"
3
- type: addon
3
+ category: business
4
4
 
5
5
  skills:
6
6
  - content-creator
@@ -1,6 +1,6 @@
1
1
  name: mobile
2
2
  description: "Mobile React Native + Expo + TypeScript"
3
- type: base
3
+ category: mobile
4
4
 
5
5
  skills:
6
6
  - testing
@@ -1,6 +1,6 @@
1
1
  name: regulatory
2
2
  description: "Regulatory & Compliance — ISO 13485, GDPR, FDA, SOC2, ISMS, QMS, MDR"
3
- type: addon
3
+ category: business
4
4
 
5
5
  skills:
6
6
  - capa-officer
@@ -1,6 +1,6 @@
1
1
  name: second-brain
2
2
  description: "Second Brain — vault de Obsidian gestionado con Claude Code: captura sin friccion, reviews diario/semanal/mensual, notas atomicas y hub files (PARA + Zettelkasten), busqueda con ranking, captura web, auditoria de salud del vault y sintaxis nativa de Obsidian (markdown, Bases, Canvas)"
3
- type: addon
3
+ category: personal
4
4
 
5
5
  skills:
6
6
  - second-brain
@@ -1,6 +1,6 @@
1
1
  name: security
2
2
  description: "Security — audits, OWASP, secrets, backups"
3
- type: addon
3
+ category: platform
4
4
 
5
5
  skills:
6
6
  - security-audit
@@ -1,6 +1,6 @@
1
1
  name: self-improving
2
2
  description: "Self-improving — auto-memory curation, skill auditing and optimization"
3
- type: addon
3
+ category: utilities
4
4
 
5
5
  skills:
6
6
  - self-improving-agent
@@ -1,6 +1,6 @@
1
1
  name: statusline
2
2
  description: "Status bar showing branch, division, and session info in Claude Code"
3
- type: addon
3
+ category: utilities
4
4
 
5
5
  skills:
6
6
  []