nccgs 1.1.0 → 1.3.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 (215) hide show
  1. package/.claude/agents/nccgs-adversarial-reviewer.md +7 -1
  2. package/.claude/agents/nccgs-engine-programmer.md +2 -1
  3. package/.claude/agents/nccgs-gameplay-programmer.md +2 -1
  4. package/.claude/agents/nccgs-qa-engineer.md +2 -1
  5. package/.claude/agents/nccgs-ui-programmer.md +2 -1
  6. package/.claude/agents/nccgs-unity-build-specialist.md +2 -1
  7. package/.claude/agents/nccgs-unity-implementer.md +2 -1
  8. package/.claude/agents/nccgs-unity-systems-specialist.md +2 -1
  9. package/.claude/agents/nccgs-unity-ui-specialist.md +2 -1
  10. package/.claude/agents/nccgs-verification-engineer.md +2 -1
  11. package/.claude/nccgs/VERSION +1 -1
  12. package/.claude/{agents → nccgs/agent-library}/nccgs-accessibility-specialist.md +0 -1
  13. package/.claude/nccgs/agent-library/nccgs-adversarial-reviewer.md +30 -0
  14. package/.claude/{agents → nccgs/agent-library}/nccgs-ai-programmer.md +0 -1
  15. package/.claude/{agents → nccgs/agent-library}/nccgs-analytics-engineer.md +0 -1
  16. package/.claude/{agents → nccgs/agent-library}/nccgs-art-direction-lead.md +0 -1
  17. package/.claude/{agents → nccgs/agent-library}/nccgs-audio-direction-lead.md +0 -1
  18. package/.claude/{agents → nccgs/agent-library}/nccgs-creative-director.md +0 -1
  19. package/.claude/{agents → nccgs/agent-library}/nccgs-documentation-manager.md +0 -1
  20. package/.claude/{agents → nccgs/agent-library}/nccgs-economy-designer.md +0 -1
  21. package/.claude/nccgs/agent-library/nccgs-engine-programmer.md +25 -0
  22. package/.claude/{agents → nccgs/agent-library}/nccgs-game-design-lead.md +0 -1
  23. package/.claude/{agents → nccgs/agent-library}/nccgs-game-designer.md +0 -1
  24. package/.claude/nccgs/agent-library/nccgs-gameplay-programmer.md +25 -0
  25. package/.claude/{agents → nccgs/agent-library}/nccgs-level-designer.md +0 -1
  26. package/.claude/{agents → nccgs/agent-library}/nccgs-live-ops-designer.md +0 -1
  27. package/.claude/{agents → nccgs/agent-library}/nccgs-localization-lead.md +0 -1
  28. package/.claude/{agents → nccgs/agent-library}/nccgs-narrative-lead.md +0 -1
  29. package/.claude/{agents → nccgs/agent-library}/nccgs-network-programmer.md +0 -1
  30. package/.claude/{agents → nccgs/agent-library}/nccgs-performance-analyst.md +0 -1
  31. package/.claude/{agents → nccgs/agent-library}/nccgs-producer.md +0 -1
  32. package/.claude/{agents → nccgs/agent-library}/nccgs-production-coordinator.md +0 -1
  33. package/.claude/{agents → nccgs/agent-library}/nccgs-programming-lead.md +0 -1
  34. package/.claude/{agents → nccgs/agent-library}/nccgs-prototyper.md +0 -1
  35. package/.claude/nccgs/agent-library/nccgs-qa-engineer.md +25 -0
  36. package/.claude/{agents → nccgs/agent-library}/nccgs-qa-lead.md +0 -1
  37. package/.claude/{agents → nccgs/agent-library}/nccgs-release-engineer.md +0 -1
  38. package/.claude/{agents → nccgs/agent-library}/nccgs-release-lead.md +0 -1
  39. package/.claude/{agents → nccgs/agent-library}/nccgs-security-engineer.md +0 -1
  40. package/.claude/{agents → nccgs/agent-library}/nccgs-sound-designer.md +0 -1
  41. package/.claude/{agents → nccgs/agent-library}/nccgs-systems-designer.md +0 -1
  42. package/.claude/{agents → nccgs/agent-library}/nccgs-technical-architect.md +0 -1
  43. package/.claude/{agents → nccgs/agent-library}/nccgs-technical-artist.md +0 -1
  44. package/.claude/{agents → nccgs/agent-library}/nccgs-technical-director.md +0 -1
  45. package/.claude/{agents → nccgs/agent-library}/nccgs-tools-programmer.md +0 -1
  46. package/.claude/nccgs/agent-library/nccgs-ui-programmer.md +25 -0
  47. package/.claude/nccgs/agent-library/nccgs-unity-build-specialist.md +25 -0
  48. package/.claude/{agents → nccgs/agent-library}/nccgs-unity-content-specialist.md +0 -1
  49. package/.claude/nccgs/agent-library/nccgs-unity-implementer.md +25 -0
  50. package/.claude/{agents → nccgs/agent-library}/nccgs-unity-rendering-specialist.md +0 -1
  51. package/.claude/nccgs/agent-library/nccgs-unity-systems-specialist.md +25 -0
  52. package/.claude/nccgs/agent-library/nccgs-unity-ui-specialist.md +25 -0
  53. package/.claude/{agents → nccgs/agent-library}/nccgs-ux-designer.md +0 -1
  54. package/.claude/nccgs/agent-library/nccgs-verification-engineer.md +25 -0
  55. package/.claude/{agents → nccgs/agent-library}/nccgs-world-builder.md +0 -1
  56. package/.claude/{agents → nccgs/agent-library}/nccgs-writer.md +0 -1
  57. package/.claude/nccgs/constitution.md +13 -0
  58. package/.claude/nccgs/hooks/agent-audit.mjs +6 -0
  59. package/.claude/nccgs/hooks/closure-guard.mjs +34 -0
  60. package/.claude/nccgs/hooks/runtime-observation.mjs +11 -0
  61. package/.claude/nccgs/hooks/session-start.mjs +8 -1
  62. package/.claude/nccgs/pipeline.json +176 -0
  63. package/.claude/nccgs/protocols/agent-contract.md +5 -0
  64. package/.claude/nccgs/protocols/astra-claude.md +77 -0
  65. package/.claude/nccgs/protocols/evidence.md +6 -0
  66. package/.claude/nccgs/protocols/model-routing.md +27 -5
  67. package/.claude/nccgs/protocols/orchestration.md +5 -0
  68. package/.claude/nccgs/protocols/task-gates.md +66 -0
  69. package/.claude/nccgs/routing.generated.md +11 -0
  70. package/.claude/nccgs/settings.fragment.json +73 -9
  71. package/.claude/nccgs/studio.json +187 -96
  72. package/.claude/nccgs/tools/approve-overrides.mjs +81 -0
  73. package/.claude/nccgs/tools/compile-policy.mjs +83 -0
  74. package/.claude/nccgs/tools/configure-models.mjs +76 -31
  75. package/.claude/nccgs/tools/gates.mjs +167 -0
  76. package/.claude/nccgs/tools/integrity.mjs +69 -0
  77. package/.claude/nccgs/tools/policy.mjs +62 -0
  78. package/.claude/nccgs/tools/runtime.mjs +40 -0
  79. package/.claude/nccgs/tools/task.mjs +77 -0
  80. package/.claude/nccgs/workflow-catalog.json +91 -14
  81. package/.claude/skills/accessibility-review/SKILL.md +6 -5
  82. package/.claude/skills/accessibility-review/references/astra.md +17 -0
  83. package/.claude/skills/accessibility-review/references/legacy.md +7 -0
  84. package/.claude/skills/architecture-decision/SKILL.md +6 -5
  85. package/.claude/skills/architecture-decision/references/astra.md +12 -0
  86. package/.claude/skills/architecture-decision/references/legacy.md +7 -0
  87. package/.claude/skills/asset-audit/SKILL.md +6 -5
  88. package/.claude/skills/asset-audit/references/astra.md +17 -0
  89. package/.claude/skills/asset-audit/references/legacy.md +7 -0
  90. package/.claude/skills/audit/SKILL.md +6 -7
  91. package/.claude/skills/audit/references/astra.md +17 -0
  92. package/.claude/skills/audit/references/legacy.md +9 -0
  93. package/.claude/skills/balance-review/SKILL.md +6 -5
  94. package/.claude/skills/balance-review/references/astra.md +17 -0
  95. package/.claude/skills/balance-review/references/legacy.md +7 -0
  96. package/.claude/skills/bug-triage/SKILL.md +6 -5
  97. package/.claude/skills/bug-triage/references/astra.md +20 -0
  98. package/.claude/skills/bug-triage/references/legacy.md +7 -0
  99. package/.claude/skills/closure/SKILL.md +5 -4
  100. package/.claude/skills/closure/references/astra.md +15 -0
  101. package/.claude/skills/closure/references/legacy.md +7 -0
  102. package/.claude/skills/compatibility-review/SKILL.md +6 -5
  103. package/.claude/skills/compatibility-review/references/astra.md +17 -0
  104. package/.claude/skills/compatibility-review/references/legacy.md +7 -0
  105. package/.claude/skills/context-pack/SKILL.md +5 -4
  106. package/.claude/skills/context-pack/references/astra.md +12 -0
  107. package/.claude/skills/context-pack/references/legacy.md +7 -0
  108. package/.claude/skills/dependency-review/SKILL.md +6 -5
  109. package/.claude/skills/dependency-review/references/astra.md +17 -0
  110. package/.claude/skills/dependency-review/references/legacy.md +7 -0
  111. package/.claude/skills/design/SKILL.md +6 -11
  112. package/.claude/skills/design/references/astra.md +12 -0
  113. package/.claude/skills/design/references/legacy.md +13 -0
  114. package/.claude/skills/design-review/SKILL.md +6 -5
  115. package/.claude/skills/design-review/references/astra.md +17 -0
  116. package/.claude/skills/design-review/references/legacy.md +7 -0
  117. package/.claude/skills/evidence-review/SKILL.md +6 -5
  118. package/.claude/skills/evidence-review/references/astra.md +17 -0
  119. package/.claude/skills/evidence-review/references/legacy.md +7 -0
  120. package/.claude/skills/hotfix/SKILL.md +6 -5
  121. package/.claude/skills/hotfix/references/astra.md +23 -0
  122. package/.claude/skills/hotfix/references/legacy.md +7 -0
  123. package/.claude/skills/incident-recovery/SKILL.md +6 -5
  124. package/.claude/skills/incident-recovery/references/astra.md +20 -0
  125. package/.claude/skills/incident-recovery/references/legacy.md +7 -0
  126. package/.claude/skills/localize-game/SKILL.md +6 -5
  127. package/.claude/skills/localize-game/references/astra.md +20 -0
  128. package/.claude/skills/localize-game/references/legacy.md +7 -0
  129. package/.claude/skills/migrate-project/SKILL.md +6 -14
  130. package/.claude/skills/migrate-project/references/astra.md +23 -0
  131. package/.claude/skills/migrate-project/references/legacy.md +19 -0
  132. package/.claude/skills/migrate-project/references/procedure.md +21 -1
  133. package/.claude/skills/milestone-review/SKILL.md +6 -5
  134. package/.claude/skills/milestone-review/references/astra.md +12 -0
  135. package/.claude/skills/milestone-review/references/legacy.md +7 -0
  136. package/.claude/skills/nccgs-code-review/SKILL.md +15 -0
  137. package/.claude/skills/nccgs-code-review/references/astra.md +15 -0
  138. package/.claude/skills/{code-review/SKILL.md → nccgs-code-review/references/legacy.md} +0 -7
  139. package/.claude/skills/performance-audit/SKILL.md +6 -5
  140. package/.claude/skills/performance-audit/references/astra.md +17 -0
  141. package/.claude/skills/performance-audit/references/legacy.md +7 -0
  142. package/.claude/skills/plan-feature/SKILL.md +6 -5
  143. package/.claude/skills/plan-feature/references/astra.md +12 -0
  144. package/.claude/skills/plan-feature/references/legacy.md +7 -0
  145. package/.claude/skills/playtest/SKILL.md +5 -4
  146. package/.claude/skills/playtest/references/astra.md +20 -0
  147. package/.claude/skills/playtest/references/legacy.md +7 -0
  148. package/.claude/skills/project-stage/SKILL.md +5 -4
  149. package/.claude/skills/project-stage/references/astra.md +12 -0
  150. package/.claude/skills/project-stage/references/legacy.md +7 -0
  151. package/.claude/skills/prototype-feature/SKILL.md +6 -5
  152. package/.claude/skills/prototype-feature/references/astra.md +20 -0
  153. package/.claude/skills/prototype-feature/references/legacy.md +7 -0
  154. package/.claude/skills/qa-plan/SKILL.md +6 -5
  155. package/.claude/skills/qa-plan/references/astra.md +12 -0
  156. package/.claude/skills/qa-plan/references/legacy.md +7 -0
  157. package/.claude/skills/release/SKILL.md +6 -9
  158. package/.claude/skills/release/references/astra.md +23 -0
  159. package/.claude/skills/release/references/legacy.md +11 -0
  160. package/.claude/skills/release-readiness/SKILL.md +6 -5
  161. package/.claude/skills/release-readiness/references/astra.md +17 -0
  162. package/.claude/skills/release-readiness/references/legacy.md +7 -0
  163. package/.claude/skills/retrospective/SKILL.md +6 -5
  164. package/.claude/skills/retrospective/references/astra.md +12 -0
  165. package/.claude/skills/retrospective/references/legacy.md +7 -0
  166. package/.claude/skills/review/SKILL.md +6 -7
  167. package/.claude/skills/review/references/astra.md +15 -0
  168. package/.claude/skills/review/references/legacy.md +9 -0
  169. package/.claude/skills/security-audit/SKILL.md +6 -5
  170. package/.claude/skills/security-audit/references/astra.md +17 -0
  171. package/.claude/skills/security-audit/references/legacy.md +7 -0
  172. package/.claude/skills/sprint-plan/SKILL.md +6 -5
  173. package/.claude/skills/sprint-plan/references/astra.md +12 -0
  174. package/.claude/skills/sprint-plan/references/legacy.md +7 -0
  175. package/.claude/skills/status/SKILL.md +5 -6
  176. package/.claude/skills/status/references/astra.md +13 -0
  177. package/.claude/skills/status/references/legacy.md +9 -0
  178. package/.claude/skills/story-readiness/SKILL.md +5 -4
  179. package/.claude/skills/story-readiness/references/astra.md +17 -0
  180. package/.claude/skills/story-readiness/references/legacy.md +7 -0
  181. package/.claude/skills/test/SKILL.md +6 -7
  182. package/.claude/skills/test/references/astra.md +20 -0
  183. package/.claude/skills/test/references/legacy.md +9 -0
  184. package/.claude/skills/ui-review/SKILL.md +6 -5
  185. package/.claude/skills/ui-review/references/astra.md +17 -0
  186. package/.claude/skills/ui-review/references/legacy.md +7 -0
  187. package/.claude/skills/work/SKILL.md +6 -27
  188. package/.claude/skills/work/references/astra.md +20 -0
  189. package/.claude/skills/work/references/closure.md +10 -0
  190. package/.claude/skills/work/references/feature-contracts.md +4 -0
  191. package/.claude/skills/work/references/legacy.md +29 -0
  192. package/README.md +67 -29
  193. package/UPGRADING.md +54 -4
  194. package/VERSION +1 -1
  195. package/docs/ARCHITECTURE.md +30 -13
  196. package/docs/HUONG-DAN-MIGRATE-VA-SU-DUNG.md +34 -322
  197. package/docs/MIGRATION-MATRIX.md +1 -1
  198. package/docs/NCCGS-1.3.md +125 -0
  199. package/docs/PROJECT-POLICY.md +18 -3
  200. package/docs/WORKFLOWS.md +20 -14
  201. package/package-assets/nccgs-project.gitignore +2 -0
  202. package/package.json +5 -3
  203. package/scaffold/.nccgs/gates.json +7 -0
  204. package/scaffold/.nccgs/project.yaml +6 -3
  205. package/scaffold/.nccgs/state.md +1 -1
  206. package/scaffold/.nccgs/templates/agent-handoff.md +10 -0
  207. package/scaffold/.nccgs/templates/closure-record.md +11 -0
  208. package/scaffold/.nccgs/templates/feature-contract.md +9 -0
  209. package/scaffold/.nccgs/templates/implementation-report.md +49 -0
  210. package/scripts/cli.mjs +10 -5
  211. package/scripts/doctor.mjs +102 -18
  212. package/scripts/install.mjs +221 -88
  213. package/scripts/validate.mjs +34 -6
  214. package/tests/framework.test.mjs +213 -8
  215. package/tests/gates.test.mjs +170 -0
@@ -15,21 +15,43 @@
15
15
  {
16
16
  "matcher": "",
17
17
  "hooks": [
18
- { "type": "command", "command": "node .claude/nccgs/hooks/session-start.mjs", "timeout": 10 }
18
+ {
19
+ "type": "command",
20
+ "command": "node .claude/nccgs/hooks/session-start.mjs",
21
+ "timeout": 10
22
+ }
19
23
  ]
20
24
  }
21
25
  ],
22
26
  "PreToolUse": [
23
27
  {
24
- "matcher": "Bash",
28
+ "matcher": "Bash|PowerShell",
25
29
  "hooks": [
26
- { "type": "command", "command": "node .claude/nccgs/hooks/protect-git.mjs", "timeout": 10 }
30
+ {
31
+ "type": "command",
32
+ "command": "node .claude/nccgs/hooks/protect-git.mjs",
33
+ "timeout": 10
34
+ }
27
35
  ]
28
36
  },
29
37
  {
30
38
  "matcher": "Write|Edit",
31
39
  "hooks": [
32
- { "type": "command", "command": "node .claude/nccgs/hooks/protect-write.mjs", "timeout": 10 }
40
+ {
41
+ "type": "command",
42
+ "command": "node .claude/nccgs/hooks/protect-write.mjs",
43
+ "timeout": 10
44
+ }
45
+ ]
46
+ },
47
+ {
48
+ "matcher": "Write|Edit|Bash|PowerShell",
49
+ "hooks": [
50
+ {
51
+ "type": "command",
52
+ "command": "node .claude/nccgs/hooks/closure-guard.mjs pre",
53
+ "timeout": 30
54
+ }
33
55
  ]
34
56
  }
35
57
  ],
@@ -37,7 +59,11 @@
37
59
  {
38
60
  "matcher": "",
39
61
  "hooks": [
40
- { "type": "command", "command": "node .claude/nccgs/hooks/pre-compact.mjs", "timeout": 10 }
62
+ {
63
+ "type": "command",
64
+ "command": "node .claude/nccgs/hooks/pre-compact.mjs",
65
+ "timeout": 10
66
+ }
41
67
  ]
42
68
  }
43
69
  ],
@@ -45,7 +71,11 @@
45
71
  {
46
72
  "matcher": "",
47
73
  "hooks": [
48
- { "type": "command", "command": "node .claude/nccgs/hooks/post-compact.mjs", "timeout": 10 }
74
+ {
75
+ "type": "command",
76
+ "command": "node .claude/nccgs/hooks/post-compact.mjs",
77
+ "timeout": 10
78
+ }
49
79
  ]
50
80
  }
51
81
  ],
@@ -53,7 +83,11 @@
53
83
  {
54
84
  "matcher": "",
55
85
  "hooks": [
56
- { "type": "command", "command": "node .claude/nccgs/hooks/agent-audit.mjs start", "timeout": 5 }
86
+ {
87
+ "type": "command",
88
+ "command": "node .claude/nccgs/hooks/agent-audit.mjs start",
89
+ "timeout": 5
90
+ }
57
91
  ]
58
92
  }
59
93
  ],
@@ -61,7 +95,11 @@
61
95
  {
62
96
  "matcher": "",
63
97
  "hooks": [
64
- { "type": "command", "command": "node .claude/nccgs/hooks/agent-audit.mjs stop", "timeout": 5 }
98
+ {
99
+ "type": "command",
100
+ "command": "node .claude/nccgs/hooks/agent-audit.mjs stop",
101
+ "timeout": 5
102
+ }
65
103
  ]
66
104
  }
67
105
  ],
@@ -69,7 +107,33 @@
69
107
  {
70
108
  "matcher": "",
71
109
  "hooks": [
72
- { "type": "command", "command": "node .claude/nccgs/hooks/session-stop.mjs", "timeout": 10 }
110
+ {
111
+ "type": "command",
112
+ "command": "node .claude/nccgs/hooks/session-stop.mjs",
113
+ "timeout": 10
114
+ }
115
+ ]
116
+ },
117
+ {
118
+ "matcher": "",
119
+ "hooks": [
120
+ {
121
+ "type": "command",
122
+ "command": "node .claude/nccgs/hooks/closure-guard.mjs stop",
123
+ "timeout": 30
124
+ }
125
+ ]
126
+ }
127
+ ],
128
+ "PostToolUse": [
129
+ {
130
+ "matcher": "Agent|Task",
131
+ "hooks": [
132
+ {
133
+ "type": "command",
134
+ "command": "node .claude/nccgs/hooks/runtime-observation.mjs",
135
+ "timeout": 30
136
+ }
73
137
  ]
74
138
  }
75
139
  ]
@@ -1,24 +1,34 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "defaultProfile": "quality",
3
+ "defaultProfile": "astra-claude",
4
4
  "modelProfiles": {
5
+ "astra-claude": {
6
+ "lightweight": "claude-opus-5-5",
7
+ "standard": "claude-opus-5-5",
8
+ "deep": "claude-opus-5-5",
9
+ "leadership": "claude-opus-5-5",
10
+ "review": "fable"
11
+ },
5
12
  "quality": {
6
13
  "lightweight": "haiku",
7
14
  "standard": "sonnet",
8
15
  "deep": "opus",
9
- "leadership": "opus"
16
+ "leadership": "opus",
17
+ "review": "opus"
10
18
  },
11
19
  "balanced": {
12
20
  "lightweight": "haiku",
13
21
  "standard": "sonnet",
14
22
  "deep": "opus",
15
- "leadership": "sonnet"
23
+ "leadership": "sonnet",
24
+ "review": "opus"
16
25
  },
17
26
  "inherit": {
18
27
  "lightweight": null,
19
28
  "standard": null,
20
29
  "deep": null,
21
- "leadership": null
30
+ "leadership": null,
31
+ "review": null
22
32
  }
23
33
  },
24
34
  "orchestration": {
@@ -32,316 +42,397 @@
32
42
  "name": "nccgs-creative-director",
33
43
  "department": "leadership",
34
44
  "modelClass": "leadership",
35
- "defaultModel": "opus",
36
- "maxTurns": 24
45
+ "defaultModel": "claude-opus-5-5",
46
+ "maxTurns": 24,
47
+ "defaultEffort": "xhigh"
37
48
  },
38
49
  {
39
50
  "name": "nccgs-technical-director",
40
51
  "department": "leadership",
41
52
  "modelClass": "leadership",
42
- "defaultModel": "opus",
43
- "maxTurns": 24
53
+ "defaultModel": "claude-opus-5-5",
54
+ "maxTurns": 24,
55
+ "defaultEffort": "xhigh"
44
56
  },
45
57
  {
46
58
  "name": "nccgs-producer",
47
59
  "department": "leadership",
48
60
  "modelClass": "leadership",
49
- "defaultModel": "opus",
50
- "maxTurns": 20
61
+ "defaultModel": "claude-opus-5-5",
62
+ "maxTurns": 20,
63
+ "defaultEffort": "xhigh"
51
64
  },
52
65
  {
53
66
  "name": "nccgs-game-design-lead",
54
67
  "department": "design",
55
68
  "modelClass": "standard",
56
- "defaultModel": "sonnet",
57
- "maxTurns": 20
69
+ "defaultModel": "claude-opus-5-5",
70
+ "maxTurns": 20,
71
+ "defaultEffort": "xhigh"
58
72
  },
59
73
  {
60
74
  "name": "nccgs-programming-lead",
61
75
  "department": "programming",
62
76
  "modelClass": "standard",
63
- "defaultModel": "sonnet",
64
- "maxTurns": 20
77
+ "defaultModel": "claude-opus-5-5",
78
+ "maxTurns": 20,
79
+ "defaultEffort": "xhigh"
65
80
  },
66
81
  {
67
82
  "name": "nccgs-art-direction-lead",
68
83
  "department": "content",
69
84
  "modelClass": "standard",
70
- "defaultModel": "sonnet",
71
- "maxTurns": 18
85
+ "defaultModel": "claude-opus-5-5",
86
+ "maxTurns": 18,
87
+ "defaultEffort": "xhigh"
72
88
  },
73
89
  {
74
90
  "name": "nccgs-audio-direction-lead",
75
91
  "department": "content",
76
92
  "modelClass": "standard",
77
- "defaultModel": "sonnet",
78
- "maxTurns": 18
93
+ "defaultModel": "claude-opus-5-5",
94
+ "maxTurns": 18,
95
+ "defaultEffort": "xhigh"
79
96
  },
80
97
  {
81
98
  "name": "nccgs-narrative-lead",
82
99
  "department": "content",
83
100
  "modelClass": "standard",
84
- "defaultModel": "sonnet",
85
- "maxTurns": 20
101
+ "defaultModel": "claude-opus-5-5",
102
+ "maxTurns": 20,
103
+ "defaultEffort": "xhigh"
86
104
  },
87
105
  {
88
106
  "name": "nccgs-qa-lead",
89
107
  "department": "quality",
90
108
  "modelClass": "standard",
91
- "defaultModel": "sonnet",
92
- "maxTurns": 20
109
+ "defaultModel": "claude-opus-5-5",
110
+ "maxTurns": 20,
111
+ "defaultEffort": "xhigh"
93
112
  },
94
113
  {
95
114
  "name": "nccgs-release-lead",
96
115
  "department": "release",
97
116
  "modelClass": "standard",
98
- "defaultModel": "sonnet",
99
- "maxTurns": 20
117
+ "defaultModel": "claude-opus-5-5",
118
+ "maxTurns": 20,
119
+ "defaultEffort": "xhigh"
100
120
  },
101
121
  {
102
122
  "name": "nccgs-localization-lead",
103
123
  "department": "content",
104
124
  "modelClass": "standard",
105
- "defaultModel": "sonnet",
106
- "maxTurns": 18
125
+ "defaultModel": "claude-opus-5-5",
126
+ "maxTurns": 18,
127
+ "defaultEffort": "xhigh"
107
128
  },
108
129
  {
109
130
  "name": "nccgs-game-designer",
110
131
  "department": "design",
111
132
  "modelClass": "standard",
112
- "defaultModel": "sonnet",
113
- "maxTurns": 18
133
+ "defaultModel": "claude-opus-5-5",
134
+ "maxTurns": 18,
135
+ "defaultEffort": "xhigh"
114
136
  },
115
137
  {
116
138
  "name": "nccgs-systems-designer",
117
139
  "department": "design",
118
140
  "modelClass": "standard",
119
- "defaultModel": "sonnet",
120
- "maxTurns": 18
141
+ "defaultModel": "claude-opus-5-5",
142
+ "maxTurns": 18,
143
+ "defaultEffort": "xhigh"
121
144
  },
122
145
  {
123
146
  "name": "nccgs-level-designer",
124
147
  "department": "design",
125
148
  "modelClass": "standard",
126
- "defaultModel": "sonnet",
127
- "maxTurns": 18
149
+ "defaultModel": "claude-opus-5-5",
150
+ "maxTurns": 18,
151
+ "defaultEffort": "xhigh"
128
152
  },
129
153
  {
130
154
  "name": "nccgs-economy-designer",
131
155
  "department": "design",
132
156
  "modelClass": "standard",
133
- "defaultModel": "sonnet",
134
- "maxTurns": 18
157
+ "defaultModel": "claude-opus-5-5",
158
+ "maxTurns": 18,
159
+ "defaultEffort": "xhigh"
135
160
  },
136
161
  {
137
162
  "name": "nccgs-ux-designer",
138
163
  "department": "design",
139
164
  "modelClass": "standard",
140
- "defaultModel": "sonnet",
141
- "maxTurns": 18
165
+ "defaultModel": "claude-opus-5-5",
166
+ "maxTurns": 18,
167
+ "defaultEffort": "xhigh"
142
168
  },
143
169
  {
144
170
  "name": "nccgs-accessibility-specialist",
145
171
  "department": "design",
146
172
  "modelClass": "standard",
147
- "defaultModel": "sonnet",
148
- "maxTurns": 18
173
+ "defaultModel": "claude-opus-5-5",
174
+ "maxTurns": 18,
175
+ "defaultEffort": "xhigh"
149
176
  },
150
177
  {
151
178
  "name": "nccgs-prototyper",
152
179
  "department": "design",
153
180
  "modelClass": "standard",
154
- "defaultModel": "sonnet",
155
- "maxTurns": 18
181
+ "defaultModel": "claude-opus-5-5",
182
+ "maxTurns": 18,
183
+ "defaultEffort": "xhigh"
156
184
  },
157
185
  {
158
186
  "name": "nccgs-technical-architect",
159
187
  "department": "programming",
160
188
  "modelClass": "deep",
161
- "defaultModel": "opus",
162
- "maxTurns": 22
189
+ "defaultModel": "claude-opus-5-5",
190
+ "maxTurns": 22,
191
+ "defaultEffort": "xhigh"
163
192
  },
164
193
  {
165
194
  "name": "nccgs-gameplay-programmer",
166
195
  "department": "programming",
167
196
  "modelClass": "standard",
168
- "defaultModel": "sonnet",
169
- "maxTurns": 22
197
+ "defaultModel": "claude-opus-5-5",
198
+ "maxTurns": 22,
199
+ "defaultEffort": "xhigh"
170
200
  },
171
201
  {
172
202
  "name": "nccgs-engine-programmer",
173
203
  "department": "programming",
174
204
  "modelClass": "standard",
175
- "defaultModel": "sonnet",
176
- "maxTurns": 22
205
+ "defaultModel": "claude-opus-5-5",
206
+ "maxTurns": 22,
207
+ "defaultEffort": "xhigh"
177
208
  },
178
209
  {
179
210
  "name": "nccgs-ai-programmer",
180
211
  "department": "programming",
181
212
  "modelClass": "standard",
182
- "defaultModel": "sonnet",
183
- "maxTurns": 22
213
+ "defaultModel": "claude-opus-5-5",
214
+ "maxTurns": 22,
215
+ "defaultEffort": "xhigh"
184
216
  },
185
217
  {
186
218
  "name": "nccgs-network-programmer",
187
219
  "department": "programming",
188
220
  "modelClass": "standard",
189
- "defaultModel": "sonnet",
190
- "maxTurns": 24
221
+ "defaultModel": "claude-opus-5-5",
222
+ "maxTurns": 24,
223
+ "defaultEffort": "xhigh"
191
224
  },
192
225
  {
193
226
  "name": "nccgs-tools-programmer",
194
227
  "department": "programming",
195
228
  "modelClass": "standard",
196
- "defaultModel": "sonnet",
197
- "maxTurns": 20
229
+ "defaultModel": "claude-opus-5-5",
230
+ "maxTurns": 20,
231
+ "defaultEffort": "xhigh"
198
232
  },
199
233
  {
200
234
  "name": "nccgs-ui-programmer",
201
235
  "department": "programming",
202
236
  "modelClass": "standard",
203
- "defaultModel": "sonnet",
204
- "maxTurns": 22
237
+ "defaultModel": "claude-opus-5-5",
238
+ "maxTurns": 22,
239
+ "defaultEffort": "xhigh"
205
240
  },
206
241
  {
207
242
  "name": "nccgs-security-engineer",
208
243
  "department": "quality",
209
244
  "modelClass": "standard",
210
- "defaultModel": "sonnet",
211
- "maxTurns": 20
245
+ "defaultModel": "claude-opus-5-5",
246
+ "maxTurns": 20,
247
+ "defaultEffort": "xhigh"
212
248
  },
213
249
  {
214
250
  "name": "nccgs-performance-analyst",
215
251
  "department": "quality",
216
252
  "modelClass": "standard",
217
- "defaultModel": "sonnet",
218
- "maxTurns": 20
253
+ "defaultModel": "claude-opus-5-5",
254
+ "maxTurns": 20,
255
+ "defaultEffort": "xhigh"
219
256
  },
220
257
  {
221
258
  "name": "nccgs-technical-artist",
222
259
  "department": "content",
223
260
  "modelClass": "standard",
224
- "defaultModel": "sonnet",
225
- "maxTurns": 20
261
+ "defaultModel": "claude-opus-5-5",
262
+ "maxTurns": 20,
263
+ "defaultEffort": "xhigh"
226
264
  },
227
265
  {
228
266
  "name": "nccgs-sound-designer",
229
267
  "department": "content",
230
268
  "modelClass": "standard",
231
- "defaultModel": "sonnet",
232
- "maxTurns": 18
269
+ "defaultModel": "claude-opus-5-5",
270
+ "maxTurns": 18,
271
+ "defaultEffort": "xhigh"
233
272
  },
234
273
  {
235
274
  "name": "nccgs-writer",
236
275
  "department": "content",
237
276
  "modelClass": "standard",
238
- "defaultModel": "sonnet",
239
- "maxTurns": 18
277
+ "defaultModel": "claude-opus-5-5",
278
+ "maxTurns": 18,
279
+ "defaultEffort": "xhigh"
240
280
  },
241
281
  {
242
282
  "name": "nccgs-world-builder",
243
283
  "department": "content",
244
284
  "modelClass": "standard",
245
- "defaultModel": "sonnet",
246
- "maxTurns": 18
285
+ "defaultModel": "claude-opus-5-5",
286
+ "maxTurns": 18,
287
+ "defaultEffort": "xhigh"
247
288
  },
248
289
  {
249
290
  "name": "nccgs-analytics-engineer",
250
291
  "department": "quality",
251
292
  "modelClass": "standard",
252
- "defaultModel": "sonnet",
253
- "maxTurns": 18
293
+ "defaultModel": "claude-opus-5-5",
294
+ "maxTurns": 18,
295
+ "defaultEffort": "xhigh"
254
296
  },
255
297
  {
256
298
  "name": "nccgs-live-ops-designer",
257
299
  "department": "design",
258
300
  "modelClass": "standard",
259
- "defaultModel": "sonnet",
260
- "maxTurns": 18
301
+ "defaultModel": "claude-opus-5-5",
302
+ "maxTurns": 18,
303
+ "defaultEffort": "xhigh"
261
304
  },
262
305
  {
263
306
  "name": "nccgs-qa-engineer",
264
307
  "department": "quality",
265
308
  "modelClass": "standard",
266
- "defaultModel": "sonnet",
267
- "maxTurns": 22
309
+ "defaultModel": "claude-opus-5-5",
310
+ "maxTurns": 22,
311
+ "defaultEffort": "xhigh"
268
312
  },
269
313
  {
270
314
  "name": "nccgs-verification-engineer",
271
315
  "department": "quality",
272
316
  "modelClass": "standard",
273
- "defaultModel": "sonnet",
274
- "maxTurns": 22
317
+ "defaultModel": "claude-opus-5-5",
318
+ "maxTurns": 22,
319
+ "defaultEffort": "xhigh"
275
320
  },
276
321
  {
277
322
  "name": "nccgs-adversarial-reviewer",
278
323
  "department": "quality",
279
- "modelClass": "deep",
280
- "defaultModel": "opus",
281
- "maxTurns": 20
324
+ "modelClass": "review",
325
+ "defaultModel": "fable",
326
+ "maxTurns": 20,
327
+ "defaultEffort": "high"
282
328
  },
283
329
  {
284
330
  "name": "nccgs-documentation-manager",
285
331
  "department": "quality",
286
332
  "modelClass": "lightweight",
287
- "defaultModel": "haiku",
288
- "maxTurns": 14
333
+ "defaultModel": "claude-opus-5-5",
334
+ "maxTurns": 14,
335
+ "defaultEffort": "xhigh"
289
336
  },
290
337
  {
291
338
  "name": "nccgs-release-engineer",
292
339
  "department": "release",
293
340
  "modelClass": "standard",
294
- "defaultModel": "sonnet",
295
- "maxTurns": 24
341
+ "defaultModel": "claude-opus-5-5",
342
+ "maxTurns": 24,
343
+ "defaultEffort": "xhigh"
296
344
  },
297
345
  {
298
346
  "name": "nccgs-unity-implementer",
299
347
  "department": "unity",
300
348
  "modelClass": "standard",
301
- "defaultModel": "sonnet",
302
- "maxTurns": 24
349
+ "defaultModel": "claude-opus-5-5",
350
+ "maxTurns": 24,
351
+ "defaultEffort": "xhigh"
303
352
  },
304
353
  {
305
354
  "name": "nccgs-unity-systems-specialist",
306
355
  "department": "unity",
307
356
  "modelClass": "standard",
308
- "defaultModel": "sonnet",
309
- "maxTurns": 22
357
+ "defaultModel": "claude-opus-5-5",
358
+ "maxTurns": 22,
359
+ "defaultEffort": "xhigh"
310
360
  },
311
361
  {
312
362
  "name": "nccgs-unity-ui-specialist",
313
363
  "department": "unity",
314
364
  "modelClass": "standard",
315
- "defaultModel": "sonnet",
316
- "maxTurns": 22
365
+ "defaultModel": "claude-opus-5-5",
366
+ "maxTurns": 22,
367
+ "defaultEffort": "xhigh"
317
368
  },
318
369
  {
319
370
  "name": "nccgs-unity-rendering-specialist",
320
371
  "department": "unity",
321
372
  "modelClass": "standard",
322
- "defaultModel": "sonnet",
323
- "maxTurns": 22
373
+ "defaultModel": "claude-opus-5-5",
374
+ "maxTurns": 22,
375
+ "defaultEffort": "xhigh"
324
376
  },
325
377
  {
326
378
  "name": "nccgs-unity-content-specialist",
327
379
  "department": "unity",
328
380
  "modelClass": "standard",
329
- "defaultModel": "sonnet",
330
- "maxTurns": 22
381
+ "defaultModel": "claude-opus-5-5",
382
+ "maxTurns": 22,
383
+ "defaultEffort": "xhigh"
331
384
  },
332
385
  {
333
386
  "name": "nccgs-unity-build-specialist",
334
387
  "department": "unity",
335
388
  "modelClass": "standard",
336
- "defaultModel": "sonnet",
337
- "maxTurns": 24
389
+ "defaultModel": "claude-opus-5-5",
390
+ "maxTurns": 24,
391
+ "defaultEffort": "xhigh"
338
392
  },
339
393
  {
340
394
  "name": "nccgs-production-coordinator",
341
395
  "department": "leadership",
342
396
  "modelClass": "standard",
343
- "defaultModel": "sonnet",
344
- "maxTurns": 18
397
+ "defaultModel": "claude-opus-5-5",
398
+ "maxTurns": 18,
399
+ "defaultEffort": "xhigh"
400
+ }
401
+ ],
402
+ "effortProfiles": {
403
+ "astra-claude": {
404
+ "lightweight": "xhigh",
405
+ "standard": "xhigh",
406
+ "deep": "xhigh",
407
+ "leadership": "xhigh",
408
+ "review": "high"
409
+ },
410
+ "quality": {
411
+ "lightweight": null,
412
+ "standard": null,
413
+ "deep": null,
414
+ "leadership": null,
415
+ "review": null
416
+ },
417
+ "balanced": {
418
+ "lightweight": null,
419
+ "standard": null,
420
+ "deep": null,
421
+ "leadership": null,
422
+ "review": null
423
+ },
424
+ "inherit": {
425
+ "lightweight": null,
426
+ "standard": null,
427
+ "deep": null,
428
+ "leadership": null,
429
+ "review": null
430
+ }
431
+ },
432
+ "sessionProfiles": {
433
+ "astra-claude": {
434
+ "model": "claude-opus-5-5",
435
+ "effortLevel": "xhigh"
345
436
  }
346
- ]
437
+ }
347
438
  }