claude-code-arcane 2.9.8 → 2.10.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/CHANGELOG.md +26 -0
- package/README.md +40 -38
- package/agents/business/business-ops-lead.md +1 -14
- package/agents/game/gameplay-programmer.md +3 -4
- package/agents/game/technical-artist.md +3 -4
- package/dist/cli.js +105 -39
- package/docs/USER-GUIDE.md +24 -22
- package/docs/coordination-rules.md +1 -1
- package/docs/directory-structure.md +93 -122
- package/package.json +1 -1
- package/profiles/ai.yaml +3 -0
- package/profiles/android-native.yaml +2 -0
- package/profiles/backend-go.yaml +1 -8
- package/profiles/backend-ts.yaml +2 -8
- package/profiles/backend-typescript.yaml +51 -0
- package/profiles/flutter.yaml +2 -0
- package/profiles/frontend-react-vite.yaml +39 -0
- package/profiles/frontend.yaml +2 -0
- package/profiles/integrations.yaml +6 -1
- package/profiles/ios-native.yaml +2 -0
- package/profiles/mobile-android-kotlin.yaml +36 -0
- package/profiles/mobile-flutter.yaml +37 -0
- package/profiles/mobile-ios-swift.yaml +37 -0
- package/profiles/mobile-react-native.yaml +39 -0
- package/profiles/mobile.yaml +2 -0
- package/rules/gamedev/engine-code.md +1 -1
- package/rules/gamedev/shader-code.md +1 -2
- package/rules/gamedev/vn-code.md +3 -2
- package/rules/implementation-workflow.md +1 -1
- package/rules/{ai-code.md → llm-code.md} +5 -5
- package/skills/agent-designer/README.md +2 -1
- package/skills/agent-designer/agent_evaluator.py +0 -5
- package/skills/ai-sdk-setup/SKILL.md +4 -4
- package/skills/arcane-add/SKILL.md +1 -1
- package/skills/arcane-list/SKILL.md +3 -3
- package/skills/arcane-status/SKILL.md +1 -1
- package/skills/architecture-decision/SKILL.md +3 -4
- package/skills/architecture-review/SKILL.md +1 -1
- package/skills/asset-audit/SKILL.md +0 -1
- package/skills/balance-check/SKILL.md +1 -1
- package/skills/brainstorm/SKILL.md +3 -3
- package/skills/brainstorm/references/next-steps-pipeline.md +8 -9
- package/skills/consistency-check/SKILL.md +2 -2
- package/skills/design-system/SKILL.md +1 -1
- package/skills/design-system/references/post-design-validation.md +2 -3
- package/skills/freelance-kickoff/SKILL.md +1 -1
- package/skills/frontend-dev/SKILL.md +27 -28
- package/skills/frontend-dev/references/asset-prompt-guide.md +1 -1
- package/skills/frontend-dev/references/motion-recipes.md +1 -1
- package/skills/help/SKILL.md +1 -2
- package/skills/hotfix/SKILL.md +2 -2
- package/skills/milestone-review/SKILL.md +1 -1
- package/skills/patch-notes/SKILL.md +1 -1
- package/skills/playtest-report/SKILL.md +2 -3
- package/skills/playwright-pro/CLAUDE.md +2 -2
- package/skills/playwright-pro/SKILL.md +13 -9
- package/skills/playwright-pro/agents/migration-planner.md +2 -2
- package/skills/playwright-pro/agents/test-architect.md +1 -2
- package/skills/playwright-pro/agents/test-debugger.md +1 -1
- package/skills/playwright-pro/hooks/detect-playwright.sh +1 -1
- package/skills/playwright-pro/skills/browserstack/SKILL.md +5 -5
- package/skills/playwright-pro/skills/migrate/SKILL.md +1 -1
- package/skills/playwright-pro/skills/report/SKILL.md +2 -2
- package/skills/playwright-pro/skills/testrail/SKILL.md +5 -5
- package/skills/playwright-pro/templates/README.md +2 -2
- package/skills/prototype/SKILL.md +1 -1
- package/skills/quick-design/SKILL.md +1 -1
- package/skills/release-checklist/SKILL.md +0 -1
- package/skills/security-audit/SKILL.md +1 -1
- package/skills/self-improving-agent/CLAUDE.md +12 -12
- package/skills/self-improving-agent/SKILL.md +16 -12
- package/skills/self-improving-agent/agents/memory-analyst.md +1 -1
- package/skills/self-improving-agent/hooks/error-capture.sh +2 -2
- package/skills/self-improving-agent/reference/memory-architecture.md +2 -2
- package/skills/self-improving-agent/reference/promotion-rules.md +3 -3
- package/skills/self-improving-agent/reference/rules-directory-patterns.md +1 -1
- package/skills/self-improving-agent/settings.json +5 -5
- package/skills/self-improving-agent/skills/extract/SKILL.md +7 -7
- package/skills/self-improving-agent/skills/promote/SKILL.md +5 -5
- package/skills/self-improving-agent/skills/remember/SKILL.md +9 -9
- package/skills/self-improving-agent/skills/review/SKILL.md +7 -7
- package/skills/self-improving-agent/skills/status/SKILL.md +8 -8
- package/skills/senior-ml-engineer/references/llm_integration_guide.md +14 -31
- package/skills/senior-prompt-engineer/SKILL.md +10 -10
- package/skills/senior-prompt-engineer/references/prompt_engineering_patterns.md +1 -1
- package/skills/senior-prompt-engineer/scripts/agent_orchestrator.py +43 -40
- package/skills/senior-prompt-engineer/scripts/prompt_optimizer.py +23 -66
- package/skills/shader-dev/reference/fluid-simulation.md +4 -4
- package/skills/shader-dev/reference/simulation-physics.md +6 -6
- package/skills/shader-dev/reference/voxel-rendering.md +1 -1
- package/skills/shader-dev/techniques/ambient-occlusion.md +1 -1
- package/skills/shader-dev/techniques/analytic-ray-tracing.md +2 -2
- package/skills/shader-dev/techniques/domain-warping.md +2 -2
- package/skills/shader-dev/techniques/fluid-simulation.md +45 -45
- package/skills/shader-dev/techniques/multipass-buffer.md +24 -24
- package/skills/shader-dev/techniques/normal-estimation.md +1 -1
- package/skills/shader-dev/techniques/particle-system.md +16 -16
- package/skills/shader-dev/techniques/polar-uv-manipulation.md +1 -1
- package/skills/shader-dev/techniques/post-processing.md +7 -7
- package/skills/shader-dev/techniques/sdf-3d.md +1 -1
- package/skills/shader-dev/techniques/simulation-physics.md +24 -24
- package/skills/shader-dev/techniques/sound-synthesis.md +2 -2
- package/skills/shader-dev/techniques/voronoi-cellular-noise.md +1 -1
- package/skills/shader-dev/techniques/voxel-rendering.md +60 -60
- package/skills/smoke-check/SKILL.md +1 -1
- package/skills/sprint-plan/SKILL.md +1 -2
- package/skills/start/SKILL.md +7 -7
- package/skills/story-done/SKILL.md +1 -1
- package/skills/test-helpers/SKILL.md +7 -2
- package/skills/test-setup/SKILL.md +1 -1
- package/skills/ue-actor-component-architecture/SKILL.md +0 -1
- package/skills/ue-ai-navigation/SKILL.md +0 -1
- package/skills/ue-animation-system/SKILL.md +0 -1
- package/skills/ue-async-threading/SKILL.md +0 -1
- package/skills/ue-audio-system/SKILL.md +0 -1
- package/skills/ue-blueprints/SKILL.md +0 -1
- package/skills/ue-character-movement/SKILL.md +0 -1
- package/skills/ue-cpp-foundations/SKILL.md +0 -1
- package/skills/ue-data-assets-tables/SKILL.md +0 -1
- package/skills/ue-editor-tools/SKILL.md +0 -1
- package/skills/ue-game-features/SKILL.md +0 -1
- package/skills/ue-gameplay-abilities/SKILL.md +0 -1
- package/skills/ue-gameplay-framework/SKILL.md +0 -1
- package/skills/ue-input-system/SKILL.md +0 -1
- package/skills/ue-mass-entity/SKILL.md +0 -1
- package/skills/ue-materials-rendering/SKILL.md +0 -1
- package/skills/ue-module-build-system/SKILL.md +0 -1
- package/skills/ue-naming-conventions/SKILL.md +0 -1
- package/skills/ue-networking-replication/SKILL.md +0 -1
- package/skills/ue-niagara-effects/SKILL.md +0 -1
- package/skills/ue-packaging/SKILL.md +0 -1
- package/skills/ue-physics-collision/SKILL.md +0 -1
- package/skills/ue-procedural-generation/SKILL.md +0 -1
- package/skills/ue-project-context/SKILL.md +0 -1
- package/skills/ue-sequencer-cinematics/SKILL.md +0 -1
- package/skills/ue-serialization-savegames/SKILL.md +0 -1
- package/skills/ue-state-trees/SKILL.md +0 -1
- package/skills/ue-testing-debugging/SKILL.md +0 -1
- package/skills/ue-ui-umg-slate/SKILL.md +0 -1
- package/skills/ue-world-level-streaming/SKILL.md +0 -1
- package/skills/ux-review/SKILL.md +1 -1
- package/docs/RELEASE-SETUP.md +0 -99
- package/docs/presentations/arcane-overview-12.pptx +0 -0
- package/docs/presentations/arcane-overview.pptx +0 -0
- package/docs/presentations/build_arcane_deck.py +0 -310
- package/docs/presentations/build_arcane_deck_12.py +0 -399
- package/docs/trusted-publishing-setup.md +0 -163
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
name: mobile-flutter
|
|
2
|
+
description: "Flutter + Dart cross-platform development"
|
|
3
|
+
category: mobile
|
|
4
|
+
|
|
5
|
+
skills:
|
|
6
|
+
- testing
|
|
7
|
+
- i18n-setup
|
|
8
|
+
- deps-audit
|
|
9
|
+
- env-sync
|
|
10
|
+
- observability
|
|
11
|
+
- release
|
|
12
|
+
- onboard
|
|
13
|
+
- perf-profile
|
|
14
|
+
- flutter-dev
|
|
15
|
+
- state-management
|
|
16
|
+
- form-validation
|
|
17
|
+
- accessibility
|
|
18
|
+
- auth-strategy
|
|
19
|
+
- ci-cd-setup
|
|
20
|
+
- deploy-check
|
|
21
|
+
|
|
22
|
+
rules:
|
|
23
|
+
universal:
|
|
24
|
+
- frontend-code
|
|
25
|
+
gamedev:
|
|
26
|
+
[]
|
|
27
|
+
|
|
28
|
+
agents:
|
|
29
|
+
- engineering
|
|
30
|
+
|
|
31
|
+
permissions:
|
|
32
|
+
allow:
|
|
33
|
+
- "Bash(flutter *)"
|
|
34
|
+
- "Bash(dart *)"
|
|
35
|
+
- "Bash(pub *)"
|
|
36
|
+
deny:
|
|
37
|
+
[]
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
name: mobile-ios-swift
|
|
2
|
+
description: "iOS native — Swift + UIKit/SwiftUI + Apple HIG"
|
|
3
|
+
category: mobile
|
|
4
|
+
|
|
5
|
+
skills:
|
|
6
|
+
- testing
|
|
7
|
+
- deps-audit
|
|
8
|
+
- env-sync
|
|
9
|
+
- observability
|
|
10
|
+
- release
|
|
11
|
+
- onboard
|
|
12
|
+
- perf-profile
|
|
13
|
+
- ios-application-dev
|
|
14
|
+
- state-management
|
|
15
|
+
- form-validation
|
|
16
|
+
- accessibility
|
|
17
|
+
- auth-strategy
|
|
18
|
+
- ci-cd-setup
|
|
19
|
+
- deploy-check
|
|
20
|
+
|
|
21
|
+
rules:
|
|
22
|
+
universal:
|
|
23
|
+
[]
|
|
24
|
+
gamedev:
|
|
25
|
+
[]
|
|
26
|
+
|
|
27
|
+
agents:
|
|
28
|
+
- engineering
|
|
29
|
+
|
|
30
|
+
permissions:
|
|
31
|
+
allow:
|
|
32
|
+
- "Bash(xcodebuild *)"
|
|
33
|
+
- "Bash(swift *)"
|
|
34
|
+
- "Bash(pod *)"
|
|
35
|
+
- "Bash(xcrun *)"
|
|
36
|
+
deny:
|
|
37
|
+
[]
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
name: mobile-react-native
|
|
2
|
+
description: "Mobile React Native + Expo + TypeScript"
|
|
3
|
+
category: mobile
|
|
4
|
+
|
|
5
|
+
skills:
|
|
6
|
+
- testing
|
|
7
|
+
- i18n-setup
|
|
8
|
+
- deps-audit
|
|
9
|
+
- env-sync
|
|
10
|
+
- observability
|
|
11
|
+
- release
|
|
12
|
+
- onboard
|
|
13
|
+
- perf-profile
|
|
14
|
+
- scaffold-react-native
|
|
15
|
+
- react-native-dev
|
|
16
|
+
- state-management
|
|
17
|
+
- form-validation
|
|
18
|
+
- accessibility
|
|
19
|
+
- auth-strategy
|
|
20
|
+
- file-uploads
|
|
21
|
+
- ci-cd-setup
|
|
22
|
+
- deploy-check
|
|
23
|
+
|
|
24
|
+
rules:
|
|
25
|
+
universal:
|
|
26
|
+
- frontend-code
|
|
27
|
+
gamedev:
|
|
28
|
+
[]
|
|
29
|
+
|
|
30
|
+
agents:
|
|
31
|
+
- engineering
|
|
32
|
+
|
|
33
|
+
permissions:
|
|
34
|
+
allow:
|
|
35
|
+
- "Bash(npm *)"
|
|
36
|
+
- "Bash(yarn *)"
|
|
37
|
+
- "Bash(pnpm *)"
|
|
38
|
+
deny:
|
|
39
|
+
[]
|
package/profiles/mobile.yaml
CHANGED
|
@@ -13,7 +13,7 @@ paths:
|
|
|
13
13
|
- Changes to public interfaces require a deprecation period and migration guide
|
|
14
14
|
- Use RAII / deterministic cleanup for all resources
|
|
15
15
|
- All engine systems must support graceful degradation
|
|
16
|
-
- Before writing engine API code,
|
|
16
|
+
- Before writing engine API code, read the project's engine version (`ProjectSettings/ProjectVersion.txt` or the `.uproject`) and verify APIs against that version's docs
|
|
17
17
|
|
|
18
18
|
## Examples
|
|
19
19
|
|
|
@@ -13,7 +13,6 @@ visual quality, performance, and cross-platform compatibility.
|
|
|
13
13
|
- `SG_Env_Water` (Unity Shader Graph)
|
|
14
14
|
- `M_Env_Water` (Unreal Material)
|
|
15
15
|
- Use descriptive names that indicate the material purpose
|
|
16
|
-
- Prefix with shader type: `spatial_`, `canvas_`, `particles_`, `post_`
|
|
17
16
|
|
|
18
17
|
## Code Quality
|
|
19
18
|
- All uniforms/parameters must have descriptive names and appropriate hints
|
|
@@ -32,7 +31,7 @@ visual quality, performance, and cross-platform compatibility.
|
|
|
32
31
|
## Cross-Platform
|
|
33
32
|
- Test shaders on minimum spec target hardware
|
|
34
33
|
- Provide fallback/simplified versions for lower quality tiers
|
|
35
|
-
- Document which render pipeline the shader targets (Forward/Deferred, URP/HDRP
|
|
34
|
+
- Document which render pipeline the shader targets (Forward/Deferred, URP/HDRP)
|
|
36
35
|
- Do not mix shaders from different render pipelines in the same directory
|
|
37
36
|
|
|
38
37
|
## Variant Management
|
package/rules/gamedev/vn-code.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Implementation Workflow Rule
|
|
2
2
|
|
|
3
|
-
Before starting
|
|
3
|
+
Before starting a non-trivial implementation task, present the user with work mode options using AskUserQuestion, so they choose how much planning the task gets before any code is written.
|
|
4
4
|
|
|
5
5
|
## When to trigger
|
|
6
6
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
paths:
|
|
3
|
-
- "src
|
|
3
|
+
- "src/**/ai/**"
|
|
4
|
+
- "src/**/llm/**"
|
|
5
|
+
- "src/**/agents/**"
|
|
4
6
|
- "src/ml/**"
|
|
5
|
-
- "src/llm/**"
|
|
6
|
-
- "src/agents/**"
|
|
7
7
|
- "src/inference/**"
|
|
8
8
|
- "prompts/**"
|
|
9
9
|
- "models/**"
|
|
@@ -12,7 +12,7 @@ paths:
|
|
|
12
12
|
# AI / LLM / ML Code Rules
|
|
13
13
|
|
|
14
14
|
Applies to software integrations with LLMs, ML inference, and AI agents — not NPC behavior in games
|
|
15
|
-
(
|
|
15
|
+
(the gamedev profiles ship their own `ai-code` rule for that).
|
|
16
16
|
|
|
17
17
|
## Prompts & Templates
|
|
18
18
|
|
|
@@ -28,7 +28,7 @@ Applies to software integrations with LLMs, ML inference, and AI agents — not
|
|
|
28
28
|
- **Cost budget per request is measured and logged**: token counts in + out, model, cost in $. Track P50/P95 cost per feature.
|
|
29
29
|
- **Timeouts and retries are bounded**: max retries ≤ 2, exponential backoff, circuit breaker on the provider. A hung LLM call must not hang a user request.
|
|
30
30
|
- **Streaming for user-facing generation**; batch / async for back-office work.
|
|
31
|
-
- **Cache deterministic calls** (same
|
|
31
|
+
- **Cache deterministic calls** (same model + same system + same user → cache the response). Document TTL and invalidation.
|
|
32
32
|
|
|
33
33
|
## Safety & PII
|
|
34
34
|
|
|
@@ -377,7 +377,8 @@ with open('my_tools_anthropic.json') as f:
|
|
|
377
377
|
# Use with Anthropic tool use
|
|
378
378
|
client = anthropic.Anthropic()
|
|
379
379
|
response = client.messages.create(
|
|
380
|
-
model="claude-
|
|
380
|
+
model="claude-opus-5-5",
|
|
381
|
+
max_tokens=16000,
|
|
381
382
|
messages=[{"role": "user", "content": "Search for AI news"}],
|
|
382
383
|
tools=schemas['tools']
|
|
383
384
|
)
|
|
@@ -220,11 +220,6 @@ class AgentEvaluator:
|
|
|
220
220
|
def _define_cost_benchmarks(self) -> Dict[str, Any]:
|
|
221
221
|
"""Define cost benchmarks for different operations"""
|
|
222
222
|
return {
|
|
223
|
-
"token_costs": {
|
|
224
|
-
"gpt-4": {"input": 0.00003, "output": 0.00006},
|
|
225
|
-
"gpt-3.5-turbo": {"input": 0.000002, "output": 0.000002},
|
|
226
|
-
"claude-3": {"input": 0.000015, "output": 0.000075}
|
|
227
|
-
},
|
|
228
223
|
"operation_costs": {
|
|
229
224
|
"simple_task": 0.005,
|
|
230
225
|
"complex_task": 0.050,
|
|
@@ -15,7 +15,7 @@ allowed-tools: Read, Glob, Grep, Bash, Write, Edit, Task
|
|
|
15
15
|
### Step 0: Gather Requirements
|
|
16
16
|
1. **Caso:** chat / generación one-shot / extracción structured / agente con tools / RAG
|
|
17
17
|
2. **Streaming** al cliente o respuesta completa
|
|
18
|
-
3. **Modelo:** Opus
|
|
18
|
+
3. **Modelo:** Opus 5.5 (`claude-opus-5-5`, razonamiento) / Sonnet 5.5 (`claude-sonnet-5-5`, balance) / Haiku 5.5 (`claude-haiku-5-5`, rápido/barato)
|
|
19
19
|
4. ¿Necesita tool calling / structured output / RAG (ver skill `pgvector-search`)?
|
|
20
20
|
|
|
21
21
|
### Step 1: Instalar
|
|
@@ -33,7 +33,7 @@ import { streamText, convertToModelMessages } from 'ai';
|
|
|
33
33
|
export async function POST(req: Request) {
|
|
34
34
|
const { messages } = await req.json();
|
|
35
35
|
const result = streamText({
|
|
36
|
-
model: anthropic('claude-sonnet-
|
|
36
|
+
model: anthropic('claude-sonnet-5-5'),
|
|
37
37
|
messages: convertToModelMessages(messages),
|
|
38
38
|
});
|
|
39
39
|
return result.toUIMessageStreamResponse();
|
|
@@ -44,7 +44,7 @@ Cliente: `useChat()` de `@ai-sdk/react`.
|
|
|
44
44
|
### Step 3: Structured output (Zod)
|
|
45
45
|
```ts
|
|
46
46
|
const { object } = await generateObject({
|
|
47
|
-
model: anthropic('claude-sonnet-
|
|
47
|
+
model: anthropic('claude-sonnet-5-5'),
|
|
48
48
|
schema: z.object({ sentiment: z.enum(['pos','neg','neutral']), score: z.number() }),
|
|
49
49
|
prompt: text,
|
|
50
50
|
});
|
|
@@ -53,7 +53,7 @@ const { object } = await generateObject({
|
|
|
53
53
|
### Step 4: Tool calling / agente
|
|
54
54
|
```ts
|
|
55
55
|
const result = await generateText({
|
|
56
|
-
model: anthropic('claude-opus-
|
|
56
|
+
model: anthropic('claude-opus-5-5'),
|
|
57
57
|
tools: {
|
|
58
58
|
search: tool({
|
|
59
59
|
description: 'Buscar docs', inputSchema: z.object({ q: z.string() }),
|
|
@@ -27,7 +27,7 @@ Mismo criterio que el picker de `arcane install`: mostrar solo lo que **no** est
|
|
|
27
27
|
elegir. No listar los 400 skills.
|
|
28
28
|
|
|
29
29
|
1. Read `.claude/arcane-manifest.json` (`profiles`, `installed_skills`)
|
|
30
|
-
2. List `profiles/*.yaml` from the source, skip `core.yaml
|
|
30
|
+
2. List `profiles/*.yaml` from the source, skip `core.yaml`, the ones already in `profiles`, and bridge files (those with a `renamed_to` field: an old name kept for older CLIs). An installed old name counts as its `renamed_to` profile
|
|
31
31
|
3. Print the remaining profiles grouped by their `category` field, in the order of
|
|
32
32
|
`CATEGORY_ORDER` (Backend, Frontend & Design, Mobile, Gamedev, Platform & Quality,
|
|
33
33
|
Project Management, Business, Personal, Utilities), each with its description
|
|
@@ -15,7 +15,7 @@ List all profiles and skills available in the Arcane source repo, so you can see
|
|
|
15
15
|
1. Read `.claude/arcane-manifest.json` to find the `source` path (Arcane repo location)
|
|
16
16
|
2. If no manifest, ask the user for the Arcane repo path
|
|
17
17
|
3. From the source repo, list:
|
|
18
|
-
- **Profiles** from `profiles/*.yaml`, grouped by their `category` field (backend, frontend, mobile, gamedev, platform, management, business, personal, utilities)
|
|
18
|
+
- **Profiles** from `profiles/*.yaml`, skipping bridge files (those with a `renamed_to` field), grouped by their `category` field (backend, frontend, mobile, gamedev, platform, management, business, personal, utilities)
|
|
19
19
|
- **All skills** in `skills/` directory, grouped by category from SKILL.md frontmatter
|
|
20
20
|
4. Mark skills that are already installed in the current project with `[installed]`
|
|
21
21
|
5. Close with a one-line summary (`COMPLETE — N profiles, M skills, K installed`)
|
|
@@ -25,8 +25,8 @@ List all profiles and skills available in the Arcane source repo, so you can see
|
|
|
25
25
|
```
|
|
26
26
|
=== Available Profiles ===
|
|
27
27
|
Backend:
|
|
28
|
-
backend-
|
|
29
|
-
backend-go
|
|
28
|
+
backend-typescript Backend TypeScript — Fastify, Prisma, Zod
|
|
29
|
+
backend-go Backend Go — scaffold, DB, auth, API design
|
|
30
30
|
...
|
|
31
31
|
|
|
32
32
|
Project Management:
|
|
@@ -27,7 +27,7 @@ Show what profiles, skills, rules, and agents are installed in the current proje
|
|
|
27
27
|
|
|
28
28
|
```
|
|
29
29
|
=== Arcane Status ===
|
|
30
|
-
Profiles: backend-
|
|
30
|
+
Profiles: backend-typescript + agile + testing
|
|
31
31
|
Installed: 2026-05-01T12:00:00Z
|
|
32
32
|
Source: /path/to/Claude-Code-Arcane
|
|
33
33
|
|
|
@@ -18,11 +18,10 @@ allowed-tools: Read, Glob, Grep, Write, Task, AskUserQuestion
|
|
|
18
18
|
|
|
19
19
|
## Phase 0: Load Engine Context (ALWAYS FIRST)
|
|
20
20
|
|
|
21
|
-
1. Read `docs/
|
|
21
|
+
1. Read the engine version from the project: `ProjectSettings/ProjectVersion.txt` (Unity) or `EngineAssociation` in the `.uproject` (Unreal). For Unreal, also read `docs/unreal/project-context.md` if `/ue-project-context` has run
|
|
22
22
|
2. Identify domain from title (Physics, Rendering, UI, Audio, etc.)
|
|
23
|
-
3.
|
|
24
|
-
4.
|
|
25
|
-
5. No engine configured → prompt to run `/setup-engine`
|
|
23
|
+
3. If the engine version is newer than what you know reliably, say so before proposing engine APIs
|
|
24
|
+
4. No engine detected → ask the user which engine and version
|
|
26
25
|
|
|
27
26
|
## Phase 1: Context Gathering
|
|
28
27
|
|
|
@@ -25,7 +25,7 @@ model: opus
|
|
|
25
25
|
## Phase 1: Load
|
|
26
26
|
|
|
27
27
|
1. **L0 Summary Scan**: Grep `## Summary` from all GDDs and ADRs (fast, low tokens)
|
|
28
|
-
2. **L1/L2 Full Load** (per mode): GDDs, ADRs, engine
|
|
28
|
+
2. **L1/L2 Full Load** (per mode): GDDs, ADRs, engine and version from `ProjectSettings/ProjectVersion.txt` (Unity) or the `.uproject` (Unreal), `consistency-failures.md`
|
|
29
29
|
3. Report: "Loaded [N] GDDs, [M] ADRs, engine: [name+version]"
|
|
30
30
|
|
|
31
31
|
## Phase 2: Extract Technical Requirements
|
|
@@ -92,4 +92,3 @@ This skill is read-only — it produces a report but does not write files.
|
|
|
92
92
|
|
|
93
93
|
- Fix naming violations using the patterns defined in CLAUDE.md.
|
|
94
94
|
- Delete confirmed orphaned assets after manual review.
|
|
95
|
-
- Run `/content-audit` to cross-check asset counts against GDD-specified requirements.
|
|
@@ -111,7 +111,7 @@ If yes:
|
|
|
111
111
|
- Guide the user to update the relevant data file in `assets/data/` or formula in `design/balance/`
|
|
112
112
|
- After each fix, offer to re-run the relevant balance checks to verify no new outliers were introduced
|
|
113
113
|
- If the fix changes a tuning knob defined in a GDD or referenced by an ADR, remind the user:
|
|
114
|
-
> "This value is defined in a design document. Run `/
|
|
114
|
+
> "This value is defined in a design document. Run `/consistency-check` after updating the GDD to find the documents that depend on it before committing."
|
|
115
115
|
|
|
116
116
|
If no:
|
|
117
117
|
- Summarize open issues and suggest saving the report to `design/balance/balance-check-[system]-[date].md` for later
|
|
@@ -11,7 +11,7 @@ allowed-tools: Read, Glob, Grep, Write, WebSearch, Task, AskUserQuestion
|
|
|
11
11
|
|
|
12
12
|
## Setup
|
|
13
13
|
|
|
14
|
-
1. Parse argument for genre/theme hint (`roguelike`, `space survival`, `open`). Resolve review mode: `--review` flag → `production/review-mode.txt` → default `lean`.
|
|
14
|
+
1. Parse argument for genre/theme hint (`roguelike`, `space survival`, `open`). Resolve review mode: `--review` flag → `production/review-mode.txt` → default `lean`.
|
|
15
15
|
2. Check existing work: `design/gdd/game-concept.md` (resume), `design/gdd/game-pillars.md` (build on).
|
|
16
16
|
3. Run phases **interactively** — collaborative exploration, not silent generation. Use `AskUserQuestion` at key decision points.
|
|
17
17
|
|
|
@@ -74,12 +74,12 @@ Using Bartle taxonomy + Quantic Foundry: primary player type, secondary appeal,
|
|
|
74
74
|
### Phase 6: Scope and Feasibility
|
|
75
75
|
|
|
76
76
|
- **Platform**: AskUserQuestion (PC / Mobile / Console / Web / Multiple)
|
|
77
|
-
- **Engine**: AskUserQuestion (Unity / Unreal / No preference →
|
|
77
|
+
- **Engine**: AskUserQuestion (Unity / Unreal / No preference → once decided, `/scaffold-unity` for Unity or `/ue-project-context` for Unreal). Don't second-guess if they pick one.
|
|
78
78
|
- **Art pipeline, content scope, MVP definition, biggest risks, scope tiers**
|
|
79
79
|
|
|
80
80
|
## Document Generation
|
|
81
81
|
|
|
82
|
-
Generate game concept using template at `.claude/
|
|
82
|
+
Generate game concept using template at `.claude/skills/_templates/game-concept.md`. Include Visual Identity Anchor section. Scope consistency rule: Estimated Scope must match full-vision timeline.
|
|
83
83
|
|
|
84
84
|
AskUserQuestion for write approval → if "revise" → iterate until approved → write to `design/gdd/game-concept.md`.
|
|
85
85
|
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
# Next Steps — Full Pipeline
|
|
2
2
|
|
|
3
|
-
1. `/
|
|
3
|
+
1. `/scaffold-unity` (Unity) or `/ue-project-context` (Unreal) — set up the engine project
|
|
4
4
|
2. `/art-bible` — visual identity (BEFORE GDDs)
|
|
5
|
-
3. `/
|
|
6
|
-
4. `/
|
|
7
|
-
5. `/
|
|
8
|
-
6. `/
|
|
9
|
-
7. `/
|
|
10
|
-
8. `/
|
|
11
|
-
9. `/
|
|
12
|
-
10. `/playtest-report` — validate hypothesis
|
|
5
|
+
3. `/map-systems` — decompose into systems with dependencies
|
|
6
|
+
4. `/design-system` — per-system GDDs
|
|
7
|
+
5. `/consistency-check` — cross-GDD conflicts before architecture
|
|
8
|
+
6. `/architecture-decision` (xN) — one ADR per decision
|
|
9
|
+
7. `/gate-check` — phase gate before production
|
|
10
|
+
8. `/prototype [core-mechanic]` — validate core loop
|
|
11
|
+
9. `/playtest-report` — validate hypothesis
|
|
13
12
|
11. `/sprint-plan new` — first sprint
|
|
@@ -10,7 +10,7 @@ allowed-tools: Read, Glob, Grep, Write, Edit, Bash
|
|
|
10
10
|
|
|
11
11
|
Detects cross-document inconsistencies by comparing GDDs against entity registry (`design/registry/entities.yaml`). Grep-first: read registry once, then grep only matching names — no full document reads.
|
|
12
12
|
|
|
13
|
-
Run: after each new GDD,
|
|
13
|
+
Run: after each new GDD, and before `/architecture-decision`. Output: conflict report + optional registry corrections.
|
|
14
14
|
|
|
15
15
|
## Arguments
|
|
16
16
|
|
|
@@ -62,7 +62,7 @@ If 🔴 conflicts found → append to `docs/consistency-failures.md` (if exists)
|
|
|
62
62
|
|
|
63
63
|
## Protocol
|
|
64
64
|
|
|
65
|
-
- PASS → proceed to `/
|
|
65
|
+
- PASS → proceed to `/architecture-decision`
|
|
66
66
|
- CONFLICTS FOUND → fix GDDs, re-run to confirm
|
|
67
67
|
- Source GDD (per `source:` field) is authoritative owner
|
|
68
68
|
- Run after each new GDD to catch issues early
|
|
@@ -23,7 +23,7 @@ Read all before asking anything:
|
|
|
23
23
|
4. `design/registry/entities.yaml` — known cross-system facts (locked values)
|
|
24
24
|
5. `docs/consistency-failures.md` — past conflict patterns for this domain
|
|
25
25
|
6. `design/gdd/game-pillars.md`, related GDDs (optional)
|
|
26
|
-
7.
|
|
26
|
+
7. Engine and version from `ProjectSettings/ProjectVersion.txt` (Unity) or the `.uproject` (Unreal) → feasibility brief
|
|
27
27
|
|
|
28
28
|
Present context summary with dependencies, registry facts, engine constraints. Warn if upstream deps undesigned.
|
|
29
29
|
|
|
@@ -3,6 +3,5 @@
|
|
|
3
3
|
1. **Self-check**: All 8 sections have real content, formulas have variables, edge cases have resolutions
|
|
4
4
|
2. **CD Pillar Review** (full mode only): Spawn `creative-director` gate CD-GDD-ALIGN
|
|
5
5
|
3. **Registry update**: Scan for new entities/items/formulas/constants -> append to `design/registry/entities.yaml`
|
|
6
|
-
4. **
|
|
7
|
-
5. **
|
|
8
|
-
6. **Suggest next**: `/consistency-check`, next system, `/gate-check`
|
|
6
|
+
4. **Update systems index**: Status -> Designed/Approved/In Review
|
|
7
|
+
5. **Suggest next**: `/consistency-check`, next system, `/gate-check`
|
|
@@ -77,7 +77,7 @@ Después **rutear al trabajo técnico**, que ya existe en el repo:
|
|
|
77
77
|
| Si el proyecto es | Seguí con |
|
|
78
78
|
|---|---|
|
|
79
79
|
| Historias y tickets | `/create-stories`, `/create-epics` |
|
|
80
|
-
| Backend, frontend, mobile | El perfil técnico que corresponda (`+backend-
|
|
80
|
+
| Backend, frontend, mobile | El perfil técnico que corresponda (`+backend-typescript`, `+frontend-react-vite`, ...) |
|
|
81
81
|
| Algo sin especificar del lado del cliente | `/product-discovery` antes de codear |
|
|
82
82
|
| Documentar lo que ya existe | `/reverse-document` |
|
|
83
83
|
|
|
@@ -159,7 +159,7 @@ project/
|
|
|
159
159
|
2. Plan motion sequences following performance guardrails
|
|
160
160
|
|
|
161
161
|
### Phase 3: Asset Generation
|
|
162
|
-
Generate all image/video/audio assets using `scripts/`.
|
|
162
|
+
Generate all image/video/audio assets using `scripts/`. Don't use placeholder URLs (unsplash, picsum, placeholder.com, via.placeholder, placehold.co, etc.) or external URLs: they break offline and in production.
|
|
163
163
|
|
|
164
164
|
1. Parse asset requirements (type, style, spec, usage)
|
|
165
165
|
2. Craft optimized prompts, show to user, confirm before generating
|
|
@@ -169,7 +169,7 @@ Generate all image/video/audio assets using `scripts/`. NEVER use placeholder UR
|
|
|
169
169
|
Follow copywriting frameworks (AIDA, PAS, FAB) to craft all text content. Do NOT use "Lorem ipsum" — write real copy.
|
|
170
170
|
|
|
171
171
|
### Phase 5: Build UI
|
|
172
|
-
Scaffold the project and build each section following Design and Motion rules. Integrate generated assets and copy. All `<img>`, `<video>`, `<source>`, and CSS `background-image`
|
|
172
|
+
Scaffold the project and build each section following Design and Motion rules. Integrate generated assets and copy. All `<img>`, `<video>`, `<source>`, and CSS `background-image` reference local assets from Phase 3.
|
|
173
173
|
|
|
174
174
|
### Phase 6: Quality Gates
|
|
175
175
|
Run final checklist (see Quality Gates section).
|
|
@@ -191,19 +191,19 @@ Adapt dynamically based on user requests.
|
|
|
191
191
|
## 1.2 Architecture Conventions
|
|
192
192
|
- **DEPENDENCY VERIFICATION:** Check `package.json` before importing any library. Output install command if missing.
|
|
193
193
|
- **Framework:** React/Next.js. Default to Server Components. Interactive components must be isolated `"use client"` leaf components.
|
|
194
|
-
- **Styling:** Tailwind CSS. Check version in `package.json`
|
|
195
|
-
- **
|
|
194
|
+
- **Styling:** Tailwind CSS. Check the version in `package.json` and use only that version's syntax; v3 and v4 don't mix.
|
|
195
|
+
- **Icons:** No emojis anywhere. Use Phosphor or Radix icons.
|
|
196
196
|
- **Viewport:** Use `min-h-[100dvh]` not `h-screen`. Use CSS Grid not flex percentage math.
|
|
197
197
|
- **Layout:** `max-w-[1400px] mx-auto` or `max-w-7xl`.
|
|
198
198
|
|
|
199
199
|
## 1.3 Design Rules
|
|
200
200
|
| Rule | Directive |
|
|
201
201
|
|------|-----------|
|
|
202
|
-
| Typography | Headlines: `text-4xl md:text-6xl tracking-tighter`. Body: `text-base leading-relaxed max-w-[65ch]`.
|
|
203
|
-
| Color | Max 1 accent, saturation < 80%.
|
|
204
|
-
| Layout |
|
|
205
|
-
| Cards |
|
|
206
|
-
| States |
|
|
202
|
+
| Typography | Headlines: `text-4xl md:text-6xl tracking-tighter`. Body: `text-base leading-relaxed max-w-[65ch]`. No Inter: use Geist/Outfit/Satoshi. No serif on dashboards. |
|
|
203
|
+
| Color | Max 1 accent, saturation < 80%. No AI purple/blue. Stick to one palette. |
|
|
204
|
+
| Layout | No centered heroes when VARIANCE > 4: use split-screen or asymmetric layouts. |
|
|
205
|
+
| Cards | No generic cards when DENSITY > 7: use `border-t`, `divide-y`, or spacing. |
|
|
206
|
+
| States | Implement Loading (skeleton), Empty, Error and Tactile feedback (`scale-[0.98]`). |
|
|
207
207
|
| Forms | Label above input. Error below. `gap-2` for input blocks. |
|
|
208
208
|
|
|
209
209
|
## 1.4 Anti-Slop Techniques
|
|
@@ -271,10 +271,10 @@ When brand styling is active:
|
|
|
271
271
|
| Hover/focus states | **CSS only** — zero JS cost |
|
|
272
272
|
| Native scroll-driven | **CSS** — `animation-timeline: scroll()` |
|
|
273
273
|
|
|
274
|
-
**Conflict
|
|
275
|
-
-
|
|
276
|
-
- R3F
|
|
277
|
-
-
|
|
274
|
+
**Conflict rules:**
|
|
275
|
+
- Don't mix GSAP and Framer Motion in the same component: both drive the same transforms and fight
|
|
276
|
+
- R3F lives in an isolated Canvas wrapper
|
|
277
|
+
- Lazy-load Lottie, GSAP and Three.js
|
|
278
278
|
|
|
279
279
|
## 2.2 Intensity Scale
|
|
280
280
|
|
|
@@ -304,22 +304,22 @@ See `references/motion-recipes.md` for full code. Summary:
|
|
|
304
304
|
| Layout Morph | Framer | Card-to-modal expansion |
|
|
305
305
|
|
|
306
306
|
## 2.4 Performance Rules
|
|
307
|
-
**GPU-only properties (
|
|
307
|
+
**GPU-only properties (animate only these):** `transform`, `opacity`, `filter`, `clip-path`
|
|
308
308
|
|
|
309
|
-
**
|
|
309
|
+
**Don't animate** `width`, `height`, `top`, `left`, `margin`, `padding`, `font-size`: they trigger layout on every frame. If you need these effects, use `transform: scale()` or `clip-path` instead.
|
|
310
310
|
|
|
311
311
|
**Isolation:**
|
|
312
|
-
- Perpetual animations
|
|
313
|
-
- `will-change: transform`
|
|
312
|
+
- Perpetual animations go in `React.memo` leaf components
|
|
313
|
+
- `will-change: transform` only during animation
|
|
314
314
|
- `contain: layout style paint` on heavy containers
|
|
315
315
|
|
|
316
316
|
**Mobile:**
|
|
317
|
-
-
|
|
318
|
-
-
|
|
317
|
+
- Respect `prefers-reduced-motion`
|
|
318
|
+
- Disable parallax/3D on `pointer: coarse`
|
|
319
319
|
- Cap particles: desktop 800, tablet 300, mobile 100
|
|
320
320
|
- Disable GSAP pin on mobile < 768px
|
|
321
321
|
|
|
322
|
-
**Cleanup:** Every `useEffect` with GSAP/observers
|
|
322
|
+
**Cleanup:** Every `useEffect` with GSAP/observers returns `() => ctx.revert()`
|
|
323
323
|
|
|
324
324
|
## 2.5 Springs & Easings
|
|
325
325
|
|
|
@@ -337,11 +337,10 @@ See `references/motion-recipes.md` for full code. Summary:
|
|
|
337
337
|
| Elastic | `cubic-bezier(0.34, 1.56, 0.64, 1)` |
|
|
338
338
|
|
|
339
339
|
## 2.6 Accessibility
|
|
340
|
-
-
|
|
341
|
-
-
|
|
342
|
-
-
|
|
343
|
-
-
|
|
344
|
-
- ALWAYS include pause button for auto-playing animations
|
|
340
|
+
- Never flash content more than 3 times per second (seizure risk)
|
|
341
|
+
- Visible focus rings (`outline`, not `box-shadow`)
|
|
342
|
+
- `aria-live="polite"` on dynamically revealed content
|
|
343
|
+
- A pause button on auto-playing animations
|
|
345
344
|
|
|
346
345
|
## 2.7 Dependencies
|
|
347
346
|
|
|
@@ -371,9 +370,9 @@ Env: `MINIMAX_API_KEY` (required).
|
|
|
371
370
|
|
|
372
371
|
## 3.2 Workflow
|
|
373
372
|
1. **Parse:** type, quantity, style, spec, usage
|
|
374
|
-
2. **Craft prompt:** Be specific (composition, lighting, style).
|
|
375
|
-
3. **Execute:** Show prompt to user
|
|
376
|
-
4. **Save:** `<project>/public/assets/{images,videos,audio}/` as `{type}-{descriptor}-{timestamp}.{ext}` —
|
|
373
|
+
2. **Craft prompt:** Be specific (composition, lighting, style). Leave text out of image prompts: generators render it garbled.
|
|
374
|
+
3. **Execute:** Show the prompt to the user and wait for confirmation before generating, then run the script
|
|
375
|
+
4. **Save:** `<project>/public/assets/{images,videos,audio}/` as `{type}-{descriptor}-{timestamp}.{ext}` — save locally
|
|
377
376
|
5. **Post-process:** Images → WebP, Videos → ffmpeg compress, Audio → normalize
|
|
378
377
|
6. **Deliver:** File path + code snippet + CSS suggestion
|
|
379
378
|
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
- Include style modifiers: "editorial photography", "3D render", "flat vector illustration"
|
|
8
8
|
- Add technical specs: "4K resolution, sharp focus, shallow depth of field"
|
|
9
9
|
- For web assets: always mention "clean background", "web-optimized", "high contrast for readability"
|
|
10
|
-
-
|
|
10
|
+
- Leave text out of image prompts unless explicitly requested — AI text rendering is unreliable
|
|
11
11
|
|
|
12
12
|
## Video Prompts
|
|
13
13
|
|
package/skills/help/SKILL.md
CHANGED
|
@@ -16,7 +16,7 @@ model: haiku
|
|
|
16
16
|
- Latest sprint: !`ls -t production/sprints/*.md 2>/dev/null | head -1 || echo 'none'`
|
|
17
17
|
- Session state: !`head -5 production/session-state/active.md 2>/dev/null || echo 'none'`
|
|
18
18
|
|
|
19
|
-
Read-only skill — reports findings, writes no files. Lightweight orientation; for
|
|
19
|
+
Read-only skill — reports findings, writes no files. Lightweight orientation; for a formal readiness check use `/gate-check`.
|
|
20
20
|
|
|
21
21
|
## Step 1: Read Catalog + Find Uncataloged Skills
|
|
22
22
|
|
|
@@ -65,7 +65,6 @@ All required steps complete → "Close to [Current]→[Next] gate. Run `/gate-ch
|
|
|
65
65
|
|
|
66
66
|
## Step 9: Escalation (only if user seems stuck)
|
|
67
67
|
|
|
68
|
-
- `/project-stage-detect` — full gap analysis
|
|
69
68
|
- `/gate-check` — formal readiness check
|
|
70
69
|
- `/start` — re-orient from scratch
|
|
71
70
|
|
package/skills/hotfix/SKILL.md
CHANGED
|
@@ -50,8 +50,8 @@ Spawn `qa-director` (or `qa-engineer` if that is what is installed) with hotfix
|
|
|
50
50
|
| QA Verdict | Action |
|
|
51
51
|
|------------|--------|
|
|
52
52
|
| Smoke check sufficient | `/smoke-check` → if PASS, proceed |
|
|
53
|
-
| Targeted QA pass | `/
|
|
54
|
-
| Full QA required | `/
|
|
53
|
+
| Targeted QA pass | Manual pass on the affected system with the plan from `/qa-plan [affected-system]` → if PASS, proceed |
|
|
54
|
+
| Full QA required | Full manual pass with the plan from `/qa-plan sprint` — delays deploy but prevents bad patch |
|
|
55
55
|
|
|
56
56
|
Do not skip this gate.
|
|
57
57
|
|
|
@@ -9,7 +9,7 @@ allowed-tools: Read, Glob, Grep, Write, Task, AskUserQuestion
|
|
|
9
9
|
|
|
10
10
|
## Phase 0: Parse Arguments
|
|
11
11
|
|
|
12
|
-
Extract milestone name (`current` = most recent). Resolve review mode: `--review` arg > `production/review-mode.txt` > default `lean`.
|
|
12
|
+
Extract milestone name (`current` = most recent). Resolve review mode: `--review` arg > `production/review-mode.txt` > default `lean`.
|
|
13
13
|
|
|
14
14
|
## Phase 1: Load Milestone Data
|
|
15
15
|
|