tribunal-kit 3.0.0 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (226) hide show
  1. package/.agent/ARCHITECTURE.md +99 -99
  2. package/.agent/GEMINI.md +52 -52
  3. package/.agent/agents/accessibility-reviewer.md +187 -220
  4. package/.agent/agents/ai-code-reviewer.md +199 -233
  5. package/.agent/agents/backend-specialist.md +215 -238
  6. package/.agent/agents/code-archaeologist.md +161 -181
  7. package/.agent/agents/database-architect.md +184 -207
  8. package/.agent/agents/debugger.md +191 -218
  9. package/.agent/agents/dependency-reviewer.md +103 -136
  10. package/.agent/agents/devops-engineer.md +218 -238
  11. package/.agent/agents/documentation-writer.md +201 -221
  12. package/.agent/agents/explorer-agent.md +160 -180
  13. package/.agent/agents/frontend-reviewer.md +160 -194
  14. package/.agent/agents/frontend-specialist.md +248 -237
  15. package/.agent/agents/game-developer.md +48 -52
  16. package/.agent/agents/logic-reviewer.md +116 -149
  17. package/.agent/agents/mobile-developer.md +200 -223
  18. package/.agent/agents/mobile-reviewer.md +162 -195
  19. package/.agent/agents/orchestrator.md +181 -211
  20. package/.agent/agents/penetration-tester.md +157 -174
  21. package/.agent/agents/performance-optimizer.md +183 -203
  22. package/.agent/agents/performance-reviewer.md +178 -211
  23. package/.agent/agents/product-manager.md +142 -162
  24. package/.agent/agents/product-owner.md +6 -25
  25. package/.agent/agents/project-planner.md +142 -162
  26. package/.agent/agents/qa-automation-engineer.md +225 -242
  27. package/.agent/agents/security-auditor.md +174 -194
  28. package/.agent/agents/seo-specialist.md +193 -213
  29. package/.agent/agents/sql-reviewer.md +161 -194
  30. package/.agent/agents/supervisor-agent.md +184 -203
  31. package/.agent/agents/swarm-worker-contracts.md +17 -17
  32. package/.agent/agents/swarm-worker-registry.md +46 -46
  33. package/.agent/agents/test-coverage-reviewer.md +160 -193
  34. package/.agent/agents/test-engineer.md +0 -21
  35. package/.agent/agents/type-safety-reviewer.md +175 -208
  36. package/.agent/patterns/generator.md +9 -9
  37. package/.agent/patterns/inversion.md +12 -12
  38. package/.agent/patterns/pipeline.md +9 -9
  39. package/.agent/patterns/reviewer.md +13 -13
  40. package/.agent/patterns/tool-wrapper.md +9 -9
  41. package/.agent/rules/GEMINI.md +63 -63
  42. package/.agent/scripts/compress_skills.py +167 -0
  43. package/.agent/scripts/consolidate_skills.py +173 -0
  44. package/.agent/scripts/deep_compress.py +202 -0
  45. package/.agent/scripts/minify_context.py +80 -0
  46. package/.agent/scripts/security_scan.py +1 -1
  47. package/.agent/scripts/strip_tribunal.py +41 -0
  48. package/.agent/skills/agent-organizer/SKILL.md +92 -126
  49. package/.agent/skills/agentic-patterns/SKILL.md +0 -70
  50. package/.agent/skills/ai-prompt-injection-defense/SKILL.md +126 -160
  51. package/.agent/skills/api-patterns/SKILL.md +123 -215
  52. package/.agent/skills/api-security-auditor/SKILL.md +143 -177
  53. package/.agent/skills/app-builder/SKILL.md +326 -50
  54. package/.agent/skills/app-builder/templates/SKILL.md +13 -15
  55. package/.agent/skills/app-builder/templates/astro-static/TEMPLATE.md +16 -16
  56. package/.agent/skills/app-builder/templates/chrome-extension/TEMPLATE.md +22 -22
  57. package/.agent/skills/app-builder/templates/cli-tool/TEMPLATE.md +18 -18
  58. package/.agent/skills/app-builder/templates/electron-desktop/TEMPLATE.md +20 -20
  59. package/.agent/skills/app-builder/templates/express-api/TEMPLATE.md +17 -17
  60. package/.agent/skills/app-builder/templates/flutter-app/TEMPLATE.md +18 -18
  61. package/.agent/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +21 -21
  62. package/.agent/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +19 -19
  63. package/.agent/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +26 -26
  64. package/.agent/skills/app-builder/templates/nextjs-static/TEMPLATE.md +26 -26
  65. package/.agent/skills/app-builder/templates/nuxt-app/TEMPLATE.md +19 -19
  66. package/.agent/skills/app-builder/templates/python-fastapi/TEMPLATE.md +18 -18
  67. package/.agent/skills/app-builder/templates/react-native-app/TEMPLATE.md +20 -20
  68. package/.agent/skills/appflow-wireframe/SKILL.md +87 -121
  69. package/.agent/skills/architecture/SKILL.md +82 -252
  70. package/.agent/skills/authentication-best-practices/SKILL.md +139 -173
  71. package/.agent/skills/bash-linux/SKILL.md +120 -154
  72. package/.agent/skills/behavioral-modes/SKILL.md +8 -69
  73. package/.agent/skills/brainstorming/SKILL.md +428 -104
  74. package/.agent/skills/building-native-ui/SKILL.md +143 -174
  75. package/.agent/skills/clean-code/SKILL.md +323 -360
  76. package/.agent/skills/code-review-checklist/SKILL.md +0 -62
  77. package/.agent/skills/config-validator/SKILL.md +107 -141
  78. package/.agent/skills/csharp-developer/SKILL.md +468 -528
  79. package/.agent/skills/database-design/SKILL.md +104 -369
  80. package/.agent/skills/deployment-procedures/SKILL.md +111 -145
  81. package/.agent/skills/devops-engineer/SKILL.md +295 -332
  82. package/.agent/skills/devops-incident-responder/SKILL.md +79 -113
  83. package/.agent/skills/doc.md +5 -5
  84. package/.agent/skills/documentation-templates/SKILL.md +19 -63
  85. package/.agent/skills/edge-computing/SKILL.md +123 -157
  86. package/.agent/skills/extract-design-system/SKILL.md +100 -134
  87. package/.agent/skills/framer-motion-expert/SKILL.md +111 -855
  88. package/.agent/skills/frontend-design/SKILL.md +151 -499
  89. package/.agent/skills/game-design-expert/SKILL.md +71 -105
  90. package/.agent/skills/game-engineering-expert/SKILL.md +88 -122
  91. package/.agent/skills/geo-fundamentals/SKILL.md +89 -124
  92. package/.agent/skills/github-operations/SKILL.md +279 -314
  93. package/.agent/skills/gsap-expert/SKILL.md +119 -826
  94. package/.agent/skills/i18n-localization/SKILL.md +104 -138
  95. package/.agent/skills/intelligent-routing/SKILL.md +159 -127
  96. package/.agent/skills/lint-and-validate/SKILL.md +8 -52
  97. package/.agent/skills/llm-engineering/SKILL.md +344 -357
  98. package/.agent/skills/local-first/SKILL.md +120 -154
  99. package/.agent/skills/mcp-builder/SKILL.md +84 -118
  100. package/.agent/skills/mobile-design/SKILL.md +213 -219
  101. package/.agent/skills/motion-engineering/SKILL.md +184 -0
  102. package/.agent/skills/nextjs-react-expert/SKILL.md +99 -698
  103. package/.agent/skills/nodejs-best-practices/SKILL.md +498 -559
  104. package/.agent/skills/observability/SKILL.md +293 -330
  105. package/.agent/skills/parallel-agents/SKILL.md +88 -122
  106. package/.agent/skills/performance-profiling/SKILL.md +217 -254
  107. package/.agent/skills/plan-writing/SKILL.md +84 -118
  108. package/.agent/skills/platform-engineer/SKILL.md +89 -123
  109. package/.agent/skills/playwright-best-practices/SKILL.md +128 -162
  110. package/.agent/skills/powershell-windows/SKILL.md +112 -146
  111. package/.agent/skills/python-patterns/SKILL.md +7 -35
  112. package/.agent/skills/python-pro/SKILL.md +148 -754
  113. package/.agent/skills/react-specialist/SKILL.md +123 -827
  114. package/.agent/skills/readme-builder/SKILL.md +15 -85
  115. package/.agent/skills/realtime-patterns/SKILL.md +269 -304
  116. package/.agent/skills/red-team-tactics/SKILL.md +10 -51
  117. package/.agent/skills/rust-pro/SKILL.md +623 -701
  118. package/.agent/skills/seo-fundamentals/SKILL.md +120 -154
  119. package/.agent/skills/server-management/SKILL.md +156 -190
  120. package/.agent/skills/shadcn-ui-expert/SKILL.md +172 -206
  121. package/.agent/skills/skill-creator/SKILL.md +18 -58
  122. package/.agent/skills/sql-pro/SKILL.md +579 -633
  123. package/.agent/skills/supabase-postgres-best-practices/SKILL.md +28 -68
  124. package/.agent/skills/swiftui-expert/SKILL.md +142 -176
  125. package/.agent/skills/systematic-debugging/SKILL.md +84 -118
  126. package/.agent/skills/tailwind-patterns/SKILL.md +516 -576
  127. package/.agent/skills/tdd-workflow/SKILL.md +103 -137
  128. package/.agent/skills/test-result-analyzer/SKILL.md +33 -73
  129. package/.agent/skills/testing-patterns/SKILL.md +512 -573
  130. package/.agent/skills/trend-researcher/SKILL.md +30 -71
  131. package/.agent/skills/ui-ux-pro-max/SKILL.md +0 -41
  132. package/.agent/skills/ui-ux-researcher/SKILL.md +51 -91
  133. package/.agent/skills/vue-expert/SKILL.md +127 -866
  134. package/.agent/skills/vulnerability-scanner/SKILL.md +354 -269
  135. package/.agent/skills/web-accessibility-auditor/SKILL.md +159 -193
  136. package/.agent/skills/web-design-guidelines/SKILL.md +17 -61
  137. package/.agent/skills/webapp-testing/SKILL.md +111 -145
  138. package/.agent/skills/whimsy-injector/SKILL.md +58 -132
  139. package/.agent/skills/workflow-optimizer/SKILL.md +28 -68
  140. package/.agent/workflows/api-tester.md +151 -151
  141. package/.agent/workflows/audit.md +127 -138
  142. package/.agent/workflows/brainstorm.md +110 -110
  143. package/.agent/workflows/changelog.md +112 -112
  144. package/.agent/workflows/create.md +124 -124
  145. package/.agent/workflows/debug.md +165 -189
  146. package/.agent/workflows/deploy.md +180 -189
  147. package/.agent/workflows/enhance.md +128 -151
  148. package/.agent/workflows/fix.md +114 -135
  149. package/.agent/workflows/generate.md +12 -4
  150. package/.agent/workflows/migrate.md +160 -160
  151. package/.agent/workflows/orchestrate.md +168 -168
  152. package/.agent/workflows/performance-benchmarker.md +114 -123
  153. package/.agent/workflows/plan.md +173 -173
  154. package/.agent/workflows/preview.md +80 -80
  155. package/.agent/workflows/refactor.md +161 -183
  156. package/.agent/workflows/review-ai.md +101 -129
  157. package/.agent/workflows/review.md +116 -116
  158. package/.agent/workflows/session.md +94 -94
  159. package/.agent/workflows/status.md +79 -79
  160. package/.agent/workflows/strengthen-skills.md +138 -139
  161. package/.agent/workflows/swarm.md +179 -179
  162. package/.agent/workflows/test.md +189 -211
  163. package/.agent/workflows/tribunal-backend.md +93 -113
  164. package/.agent/workflows/tribunal-database.md +94 -115
  165. package/.agent/workflows/tribunal-frontend.md +95 -118
  166. package/.agent/workflows/tribunal-full.md +92 -133
  167. package/.agent/workflows/tribunal-mobile.md +94 -119
  168. package/.agent/workflows/tribunal-performance.md +109 -133
  169. package/.agent/workflows/ui-ux-pro-max.md +122 -143
  170. package/package.json +1 -1
  171. package/.agent/skills/api-patterns/api-style.md +0 -42
  172. package/.agent/skills/api-patterns/auth.md +0 -24
  173. package/.agent/skills/api-patterns/documentation.md +0 -26
  174. package/.agent/skills/api-patterns/graphql.md +0 -41
  175. package/.agent/skills/api-patterns/rate-limiting.md +0 -31
  176. package/.agent/skills/api-patterns/response.md +0 -37
  177. package/.agent/skills/api-patterns/rest.md +0 -40
  178. package/.agent/skills/api-patterns/security-testing.md +0 -122
  179. package/.agent/skills/api-patterns/trpc.md +0 -41
  180. package/.agent/skills/api-patterns/versioning.md +0 -22
  181. package/.agent/skills/app-builder/agent-coordination.md +0 -71
  182. package/.agent/skills/app-builder/feature-building.md +0 -53
  183. package/.agent/skills/app-builder/project-detection.md +0 -34
  184. package/.agent/skills/app-builder/scaffolding.md +0 -118
  185. package/.agent/skills/app-builder/tech-stack.md +0 -40
  186. package/.agent/skills/architecture/context-discovery.md +0 -43
  187. package/.agent/skills/architecture/examples.md +0 -94
  188. package/.agent/skills/architecture/pattern-selection.md +0 -68
  189. package/.agent/skills/architecture/patterns-reference.md +0 -50
  190. package/.agent/skills/architecture/trade-off-analysis.md +0 -77
  191. package/.agent/skills/brainstorming/dynamic-questioning.md +0 -360
  192. package/.agent/skills/database-design/database-selection.md +0 -43
  193. package/.agent/skills/database-design/indexing.md +0 -39
  194. package/.agent/skills/database-design/migrations.md +0 -48
  195. package/.agent/skills/database-design/optimization.md +0 -36
  196. package/.agent/skills/database-design/orm-selection.md +0 -30
  197. package/.agent/skills/database-design/schema-design.md +0 -56
  198. package/.agent/skills/frontend-design/animation-guide.md +0 -331
  199. package/.agent/skills/frontend-design/color-system.md +0 -329
  200. package/.agent/skills/frontend-design/decision-trees.md +0 -418
  201. package/.agent/skills/frontend-design/motion-graphics.md +0 -306
  202. package/.agent/skills/frontend-design/typography-system.md +0 -363
  203. package/.agent/skills/frontend-design/ux-psychology.md +0 -1116
  204. package/.agent/skills/frontend-design/visual-effects.md +0 -383
  205. package/.agent/skills/intelligent-routing/router-manifest.md +0 -65
  206. package/.agent/skills/mobile-design/decision-trees.md +0 -516
  207. package/.agent/skills/mobile-design/mobile-backend.md +0 -491
  208. package/.agent/skills/mobile-design/mobile-color-system.md +0 -420
  209. package/.agent/skills/mobile-design/mobile-debugging.md +0 -122
  210. package/.agent/skills/mobile-design/mobile-design-thinking.md +0 -357
  211. package/.agent/skills/mobile-design/mobile-navigation.md +0 -458
  212. package/.agent/skills/mobile-design/mobile-performance.md +0 -767
  213. package/.agent/skills/mobile-design/mobile-testing.md +0 -356
  214. package/.agent/skills/mobile-design/mobile-typography.md +0 -433
  215. package/.agent/skills/mobile-design/platform-android.md +0 -666
  216. package/.agent/skills/mobile-design/platform-ios.md +0 -561
  217. package/.agent/skills/mobile-design/touch-psychology.md +0 -537
  218. package/.agent/skills/nextjs-react-expert/1-async-eliminating-waterfalls.md +0 -312
  219. package/.agent/skills/nextjs-react-expert/2-bundle-bundle-size-optimization.md +0 -240
  220. package/.agent/skills/nextjs-react-expert/3-server-server-side-performance.md +0 -490
  221. package/.agent/skills/nextjs-react-expert/4-client-client-side-data-fetching.md +0 -264
  222. package/.agent/skills/nextjs-react-expert/5-rerender-re-render-optimization.md +0 -581
  223. package/.agent/skills/nextjs-react-expert/6-rendering-rendering-performance.md +0 -432
  224. package/.agent/skills/nextjs-react-expert/7-js-javascript-performance.md +0 -684
  225. package/.agent/skills/nextjs-react-expert/8-advanced-advanced-patterns.md +0 -150
  226. package/.agent/skills/vulnerability-scanner/checklists.md +0 -121
@@ -9,9 +9,6 @@ applies-to-model: gemini-2.5-pro, claude-3-7-sonnet
9
9
 
10
10
  # Code Review Standards
11
11
 
12
- > A code review is not a gatekeeping exercise.
13
- > It is a knowledge transfer session that also catches bugs.
14
-
15
12
  ---
16
13
 
17
14
  ## Review Mindset
@@ -144,63 +141,4 @@ VBC status: PENDING → VERIFIED
144
141
  Evidence: [link to terminal output, test result, or file diff]
145
142
  ```
146
143
 
147
-
148
- ---
149
-
150
- ## 🏛️ Tribunal Integration (Anti-Hallucination)
151
-
152
- **Slash command: `/review`, `/tribunal-full`**
153
- **Active reviewers: `logic-reviewer` · `security-auditor`**
154
-
155
- ### ✅ Pre-Flight Self-Audit
156
-
157
- Review these questions before submitting your code review findings:
158
- ```
159
- ✅ Did I read the tests to understand the intended behavior before reading the implementation?
160
- ✅ Are my BLOCKER and CONCERN comments actionable and specific?
161
- ✅ Have I verified that any alternative methods or libraries I suggested actually exist?
162
- ✅ Have I refrained from quoting more than 3 lines of code in my response?
163
- ✅ Is my feedback focused on logic, edge cases, and security rather than aesthetic formatting?
164
- ```
165
-
166
-
167
- ---
168
-
169
- ## 🤖 LLM-Specific Traps
170
-
171
- AI coding assistants often fall into specific bad habits when dealing with this domain. These are strictly forbidden:
172
-
173
- 1. **Over-engineering:** Proposing complex abstractions or distributed systems when a simpler approach suffices.
174
- 2. **Hallucinated Libraries/Methods:** Using non-existent methods or packages. Always `// VERIFY` or check `package.json` / `requirements.txt`.
175
- 3. **Skipping Edge Cases:** Writing the "happy path" and ignoring error handling, timeouts, or data validation.
176
- 4. **Context Amnesia:** Forgetting the user's constraints and offering generic advice instead of tailored solutions.
177
- 5. **Silent Degradation:** Catching and suppressing errors without logging or re-raising.
178
-
179
144
  ---
180
-
181
- ## 🏛️ Tribunal Integration (Anti-Hallucination)
182
-
183
- **Slash command: `/review` or `/tribunal-full`**
184
- **Active reviewers: `logic-reviewer` · `security-auditor`**
185
-
186
- ### ❌ Forbidden AI Tropes
187
-
188
- 1. **Blind Assumptions:** Never make an assumption without documenting it clearly with `// VERIFY: [reason]`.
189
- 2. **Silent Degradation:** Catching and suppressing errors without logging or handling.
190
- 3. **Context Amnesia:** Forgetting the user's constraints and offering generic advice instead of tailored solutions.
191
-
192
- ### ✅ Pre-Flight Self-Audit
193
-
194
- Review these questions before confirming output:
195
- ```
196
- ✅ Did I rely ONLY on real, verified tools and methods?
197
- ✅ Is this solution appropriately scoped to the user's constraints?
198
- ✅ Did I handle potential failure modes and edge cases?
199
- ✅ Have I avoided generic boilerplate that doesn't add value?
200
- ```
201
-
202
- ### 🛑 Verification-Before-Completion (VBC) Protocol
203
-
204
- **CRITICAL:** You must follow a strict "evidence-based closeout" state machine.
205
- - ❌ **Forbidden:** Declaring a task complete because the output "looks correct."
206
- - ✅ **Required:** You are explicitly forbidden from finalizing any task without providing **concrete evidence** (terminal output, passing tests, compile success, or equivalent proof) that your output works as intended.
@@ -1,141 +1,107 @@
1
- ---
2
- name: config-validator
3
- description: Configuration validation and workspace self-auditing mastery. Verifying .agent directory integrity, checking JSON schemas, resolving broken pointers to missing scripts/skills, validating environment states, and enforcing configuration constraints before execution. Use when loading settings, modifying manifests, or diagnosing system configuration rot.
4
- allowed-tools: Read, Write, Edit, Glob, Grep
5
- version: 2.0.0
6
- last-updated: 2026-04-02
7
- applies-to-model: gemini-2.5-pro, claude-3-7-sonnet
8
- ---
9
-
10
- # Config Validator — System Integrity Mastery
11
-
12
- > An invalid configuration is a ticking time bomb.
13
- > Systems don't fail when the config breaks; they fail when the broken config is executed 3 weeks later.
14
-
15
- ---
16
-
17
- ## 1. Fail Fast, Fail Loudly
18
-
19
- Never allow a system to boot, run, or proceed into a workflow if the underlying configuration is invalid. Parse configurations at the absolute boundary.
20
-
21
- ```typescript
22
- import { z } from "zod";
23
-
24
- // VULNERABLE: Implicit Trust
25
- // Assumes the JSON file is correct. Will crash randomly deep in the execution stack
26
- // if 'maxRetries' is missing or set to a string.
27
- const config = JSON.parse(fs.readFileSync('./.agent/config.json', 'utf8'));
28
- runAgent(config.maxRetries);
29
-
30
- // ✅ SAFE: Boundary Validation via Zod
31
- const ConfigSchema = z.object({
32
- version: z.string().regex(/^\d+\.\d+\.\d+$/),
33
- maxRetries: z.number().min(0).max(10).default(3),
34
- enabledSkills: z.array(z.string()),
35
- environment: z.enum(["development", "production", "test"]),
36
- apiEndpoint: z.string().url().optional()
37
- });
38
-
39
- try {
40
- const rawData = JSON.parse(fs.readFileSync('./.agent/config.json', 'utf8'));
41
- const config = ConfigSchema.parse(rawData); // Throws heavily detailed error instantly
42
- } catch (err) {
43
- logger.fatal("System boot aborted. Invalid config.json:", err.errors);
44
- process.exit(1);
45
- }
46
- ```
47
-
48
- ---
49
-
50
- ## 2. Directory & Manifest Self-Auditing
51
-
52
- Configuration files often reference physical system assets (scripts, workflows, other config files). The validator must check referential integrity.
53
-
54
- If `manifest.json` says `{"workflow": "scripts/deploy.sh"}`, the validator MUST verify that `scripts/deploy.sh` actually exists before the orchestrator tries to run it.
55
-
56
- ```typescript
57
- // Validating Referential Integrity
58
- function auditAgentDirectory(config: Config) {
59
- const missingFiles = [];
60
-
61
- for (const skill of config.enabledSkills) {
62
- const skillPath = path.join('.agent/skills', skill, 'SKILL.md');
63
- if (!fs.existsSync(skillPath)) {
64
- missingFiles.push(`Skill manifest definition missing: ${skillPath}`);
65
- }
66
- }
67
-
68
- if (missingFiles.length > 0) {
69
- throw new Error(`Referential Integrity Failure:\n${missingFiles.join('\n')}`);
70
- }
71
- }
72
- ```
73
-
74
- ---
75
-
76
- ## 3. Environment Variable Validation
77
-
78
- Missing or malformed `.env` files are the #1 cause of deployment failure.
79
-
80
- Treat environment variables exactly like JSON configs: apply a rigid schema mapping at boot.
81
-
82
- ```typescript
83
- // Instead of checking process.env.DATABASE_URL throughout the app,
84
- // export a strictly validated object once.
85
-
86
- // src/env.ts
87
- import { z } from "zod";
88
-
89
- const EnvSchema = z.object({
90
- DATABASE_URL: z.string().url(),
91
- PORT: z.coerce.number().default(3000), // Transforms string "3000" to number 3000
92
- NODE_ENV: z.enum(["development", "production"]).default("development"),
93
- API_KEY: z.string().min(16), // Ensures keys aren't empty or mock data
94
- });
95
-
96
- export const ENV = EnvSchema.parse(process.env);
97
- ```
98
-
99
- ---
100
-
101
- ## 4. Safe Configuration Mutation
102
-
103
- When automating updates to a JSON configuration (e.g., adding a new skill to `config.json`), never serialize over the original file blindly.
104
-
105
- 1. **Read** original JSON.
106
- 2. **Apply** modifications in memory.
107
- 3. **Validate** the new object against the Zod schema.
108
- 4. **Write** atomically (write to `config.json.tmp`, then standard OS file rename to `config.json` to prevent corruption if power dies mid-write).
109
-
110
- ---
111
-
112
- ## 🤖 LLM-Specific Traps (Config Validation)
113
-
114
- 1. **Type Assumptions:** Assuming `JSON.parse` returns reliable data interfaces. It returns `any`. Zod ensures strict types and strips prototype pollution hooks.
115
- 2. **Silent Defaults:** Using `config.maxRetries || 3` logic inside deep functional logic. This scatters the system defaults across 40 files instead of centralizing them in early config validation.
116
- 3. **Broken Manifest Pointers:** Referencing a deleted skill or renamed sub-agent script in a workflow array, resulting in uncatchable OS module resolution crashes downstream. Validation must check `fs.existsSync`.
117
- 4. **Environment Guessing:** An AI script executing `process.env.OPENAI_API_KEY` sequentially without a pre-validation block, executing 10 DB writes successfully but crashing exactly at the AI networking phase.
118
- 5. **Corrupting Serializations:** Directly re-writing JSON using `JSON.stringify` without formatting (e.g., `JSON.stringify(data, null, 2)`), radically destroying human readability of `.json` settings files.
119
- 6. **Trailing Commas:** Generating JSON patches using string regex replacement that leaves dangling commas inside arrays, completely breaking `JSON.parse`.
120
- 7. **Version Blindness:** Running a v2 config schema against a legacy v1 deployment file without executing transformation/upgrade functions first.
121
- 8. **Insecure Path Joining:** Constructing config path validations manually (`dir + '/' + config.path`), opening vectors for basic directory traversal attacks (`../../root/etc`) if the config string is compromised. Use `path.join`.
122
- 9. **Catch-And-Swallow:** Catching a config parsing error and returning an empty fallback object blindly instead of explicitly halting the system and notifying the administrator.
123
- 10. **Regex instead of Zod:** Writing 40 lines of regular expressions to manually check email strings, port bounds, and arrays inside JSON config dumps rather than leveraging built-in schema libraries.
124
-
125
- ---
126
-
127
- ## 🏛️ Tribunal Integration
128
-
129
- ### ✅ Pre-Flight Self-Audit
130
- ```
131
- ✅ Are configurations validated strictly and completely before any further code execution?
132
- ✅ Is there a robust schema engine (e.g., Zod) parsing types and clamping out-of-bound variables?
133
- ✅ Are physical file references inside manifests audited locally using `fs.existsSync`?
134
- ✅ Have process/environment variables (.env) been constrained through strict boot parsing?
135
- ✅ Are JSON mutations serialized with correct formatting (`null, 2`) and semantic integrity?
136
- ✅ Are missing critical properties explicitly causing loud runtime fatal crashes rather than silent fallbacks?
137
- ✅ Does the validation strip unexpected/injected keys from payloads via strict validation?
138
- ✅ Does the config schema accurately validate data types (preventing string "3000" instead of numeric 3000)?
139
- ✅ Are modifications serialized safely using atomic write/rename patterns to prevent corruption?
140
- ✅ Did I ensure the schema library handles URL integrity for connection strings?
141
- ```
1
+ ---
2
+ name: config-validator
3
+ description: Configuration validation and workspace self-auditing mastery. Verifying .agent directory integrity, checking JSON schemas, resolving broken pointers to missing scripts/skills, validating environment states, and enforcing configuration constraints before execution. Use when loading settings, modifying manifests, or diagnosing system configuration rot.
4
+ allowed-tools: Read, Write, Edit, Glob, Grep
5
+ version: 2.0.0
6
+ last-updated: 2026-04-02
7
+ applies-to-model: gemini-2.5-pro, claude-3-7-sonnet
8
+ ---
9
+
10
+ # Config Validator — System Integrity Mastery
11
+
12
+ ---
13
+
14
+ ## 1. Fail Fast, Fail Loudly
15
+
16
+ Never allow a system to boot, run, or proceed into a workflow if the underlying configuration is invalid. Parse configurations at the absolute boundary.
17
+
18
+ ```typescript
19
+ import { z } from "zod";
20
+
21
+ // ❌ VULNERABLE: Implicit Trust
22
+ // Assumes the JSON file is correct. Will crash randomly deep in the execution stack
23
+ // if 'maxRetries' is missing or set to a string.
24
+ const config = JSON.parse(fs.readFileSync('./.agent/config.json', 'utf8'));
25
+ runAgent(config.maxRetries);
26
+
27
+ // SAFE: Boundary Validation via Zod
28
+ const ConfigSchema = z.object({
29
+ version: z.string().regex(/^\d+\.\d+\.\d+$/),
30
+ maxRetries: z.number().min(0).max(10).default(3),
31
+ enabledSkills: z.array(z.string()),
32
+ environment: z.enum(["development", "production", "test"]),
33
+ apiEndpoint: z.string().url().optional()
34
+ });
35
+
36
+ try {
37
+ const rawData = JSON.parse(fs.readFileSync('./.agent/config.json', 'utf8'));
38
+ const config = ConfigSchema.parse(rawData); // Throws heavily detailed error instantly
39
+ } catch (err) {
40
+ logger.fatal("System boot aborted. Invalid config.json:", err.errors);
41
+ process.exit(1);
42
+ }
43
+ ```
44
+
45
+ ---
46
+
47
+ ## 2. Directory & Manifest Self-Auditing
48
+
49
+ Configuration files often reference physical system assets (scripts, workflows, other config files). The validator must check referential integrity.
50
+
51
+ If `manifest.json` says `{"workflow": "scripts/deploy.sh"}`, the validator MUST verify that `scripts/deploy.sh` actually exists before the orchestrator tries to run it.
52
+
53
+ ```typescript
54
+ // Validating Referential Integrity
55
+ function auditAgentDirectory(config: Config) {
56
+ const missingFiles = [];
57
+
58
+ for (const skill of config.enabledSkills) {
59
+ const skillPath = path.join('.agent/skills', skill, 'SKILL.md');
60
+ if (!fs.existsSync(skillPath)) {
61
+ missingFiles.push(`Skill manifest definition missing: ${skillPath}`);
62
+ }
63
+ }
64
+
65
+ if (missingFiles.length > 0) {
66
+ throw new Error(`Referential Integrity Failure:\n${missingFiles.join('\n')}`);
67
+ }
68
+ }
69
+ ```
70
+
71
+ ---
72
+
73
+ ## 3. Environment Variable Validation
74
+
75
+ Missing or malformed `.env` files are the #1 cause of deployment failure.
76
+
77
+ Treat environment variables exactly like JSON configs: apply a rigid schema mapping at boot.
78
+
79
+ ```typescript
80
+ // Instead of checking process.env.DATABASE_URL throughout the app,
81
+ // export a strictly validated object once.
82
+
83
+ // src/env.ts
84
+ import { z } from "zod";
85
+
86
+ const EnvSchema = z.object({
87
+ DATABASE_URL: z.string().url(),
88
+ PORT: z.coerce.number().default(3000), // Transforms string "3000" to number 3000
89
+ NODE_ENV: z.enum(["development", "production"]).default("development"),
90
+ API_KEY: z.string().min(16), // Ensures keys aren't empty or mock data
91
+ });
92
+
93
+ export const ENV = EnvSchema.parse(process.env);
94
+ ```
95
+
96
+ ---
97
+
98
+ ## 4. Safe Configuration Mutation
99
+
100
+ When automating updates to a JSON configuration (e.g., adding a new skill to `config.json`), never serialize over the original file blindly.
101
+
102
+ 1. **Read** original JSON.
103
+ 2. **Apply** modifications in memory.
104
+ 3. **Validate** the new object against the Zod schema.
105
+ 4. **Write** atomically (write to `config.json.tmp`, then standard OS file rename to `config.json` to prevent corruption if power dies mid-write).
106
+
107
+ ---