tribunal-kit 2.4.6 → 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 (250) hide show
  1. package/.agent/ARCHITECTURE.md +99 -99
  2. package/.agent/GEMINI.md +52 -52
  3. package/.agent/agents/accessibility-reviewer.md +139 -86
  4. package/.agent/agents/ai-code-reviewer.md +160 -90
  5. package/.agent/agents/backend-specialist.md +164 -127
  6. package/.agent/agents/code-archaeologist.md +115 -73
  7. package/.agent/agents/database-architect.md +130 -110
  8. package/.agent/agents/debugger.md +137 -97
  9. package/.agent/agents/dependency-reviewer.md +78 -30
  10. package/.agent/agents/devops-engineer.md +161 -118
  11. package/.agent/agents/documentation-writer.md +151 -87
  12. package/.agent/agents/explorer-agent.md +117 -99
  13. package/.agent/agents/frontend-reviewer.md +127 -47
  14. package/.agent/agents/frontend-specialist.md +169 -109
  15. package/.agent/agents/game-developer.md +28 -164
  16. package/.agent/agents/logic-reviewer.md +87 -49
  17. package/.agent/agents/mobile-developer.md +151 -103
  18. package/.agent/agents/mobile-reviewer.md +133 -50
  19. package/.agent/agents/orchestrator.md +121 -110
  20. package/.agent/agents/penetration-tester.md +103 -77
  21. package/.agent/agents/performance-optimizer.md +136 -92
  22. package/.agent/agents/performance-reviewer.md +139 -69
  23. package/.agent/agents/product-manager.md +104 -70
  24. package/.agent/agents/product-owner.md +6 -25
  25. package/.agent/agents/project-planner.md +95 -95
  26. package/.agent/agents/qa-automation-engineer.md +174 -87
  27. package/.agent/agents/security-auditor.md +133 -129
  28. package/.agent/agents/seo-specialist.md +160 -99
  29. package/.agent/agents/sql-reviewer.md +132 -44
  30. package/.agent/agents/supervisor-agent.md +137 -109
  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 +132 -53
  34. package/.agent/agents/test-engineer.md +0 -21
  35. package/.agent/agents/type-safety-reviewer.md +143 -33
  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/__pycache__/auto_preview.cpython-311.pyc +0 -0
  43. package/.agent/scripts/__pycache__/bundle_analyzer.cpython-311.pyc +0 -0
  44. package/.agent/scripts/__pycache__/checklist.cpython-311.pyc +0 -0
  45. package/.agent/scripts/__pycache__/dependency_analyzer.cpython-311.pyc +0 -0
  46. package/.agent/scripts/__pycache__/security_scan.cpython-311.pyc +0 -0
  47. package/.agent/scripts/__pycache__/session_manager.cpython-311.pyc +0 -0
  48. package/.agent/scripts/__pycache__/skill_integrator.cpython-311.pyc +0 -0
  49. package/.agent/scripts/__pycache__/swarm_dispatcher.cpython-311.pyc +0 -0
  50. package/.agent/scripts/__pycache__/test_runner.cpython-311.pyc +0 -0
  51. package/.agent/scripts/__pycache__/verify_all.cpython-311.pyc +0 -0
  52. package/.agent/scripts/compress_skills.py +167 -0
  53. package/.agent/scripts/consolidate_skills.py +173 -0
  54. package/.agent/scripts/deep_compress.py +202 -0
  55. package/.agent/scripts/minify_context.py +80 -0
  56. package/.agent/scripts/security_scan.py +1 -1
  57. package/.agent/scripts/strip_tribunal.py +41 -0
  58. package/.agent/skills/agent-organizer/SKILL.md +60 -100
  59. package/.agent/skills/agentic-patterns/SKILL.md +0 -70
  60. package/.agent/skills/ai-prompt-injection-defense/SKILL.md +108 -53
  61. package/.agent/skills/api-patterns/SKILL.md +197 -257
  62. package/.agent/skills/api-security-auditor/SKILL.md +125 -57
  63. package/.agent/skills/app-builder/SKILL.md +326 -50
  64. package/.agent/skills/app-builder/templates/SKILL.md +13 -15
  65. package/.agent/skills/app-builder/templates/astro-static/TEMPLATE.md +16 -16
  66. package/.agent/skills/app-builder/templates/chrome-extension/TEMPLATE.md +22 -22
  67. package/.agent/skills/app-builder/templates/cli-tool/TEMPLATE.md +18 -18
  68. package/.agent/skills/app-builder/templates/electron-desktop/TEMPLATE.md +20 -20
  69. package/.agent/skills/app-builder/templates/express-api/TEMPLATE.md +17 -17
  70. package/.agent/skills/app-builder/templates/flutter-app/TEMPLATE.md +18 -18
  71. package/.agent/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +21 -21
  72. package/.agent/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +19 -19
  73. package/.agent/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +26 -26
  74. package/.agent/skills/app-builder/templates/nextjs-static/TEMPLATE.md +26 -26
  75. package/.agent/skills/app-builder/templates/nuxt-app/TEMPLATE.md +19 -19
  76. package/.agent/skills/app-builder/templates/python-fastapi/TEMPLATE.md +18 -18
  77. package/.agent/skills/app-builder/templates/react-native-app/TEMPLATE.md +20 -20
  78. package/.agent/skills/appflow-wireframe/SKILL.md +71 -98
  79. package/.agent/skills/architecture/SKILL.md +161 -200
  80. package/.agent/skills/authentication-best-practices/SKILL.md +121 -54
  81. package/.agent/skills/bash-linux/SKILL.md +71 -166
  82. package/.agent/skills/behavioral-modes/SKILL.md +8 -69
  83. package/.agent/skills/brainstorming/SKILL.md +345 -127
  84. package/.agent/skills/building-native-ui/SKILL.md +125 -57
  85. package/.agent/skills/clean-code/SKILL.md +266 -149
  86. package/.agent/skills/code-review-checklist/SKILL.md +0 -62
  87. package/.agent/skills/config-validator/SKILL.md +73 -131
  88. package/.agent/skills/csharp-developer/SKILL.md +434 -73
  89. package/.agent/skills/database-design/SKILL.md +190 -275
  90. package/.agent/skills/deployment-procedures/SKILL.md +81 -158
  91. package/.agent/skills/devops-engineer/SKILL.md +255 -94
  92. package/.agent/skills/devops-incident-responder/SKILL.md +50 -69
  93. package/.agent/skills/doc.md +5 -5
  94. package/.agent/skills/documentation-templates/SKILL.md +19 -63
  95. package/.agent/skills/edge-computing/SKILL.md +75 -165
  96. package/.agent/skills/extract-design-system/SKILL.md +84 -58
  97. package/.agent/skills/framer-motion-expert/SKILL.md +195 -0
  98. package/.agent/skills/frontend-design/SKILL.md +151 -499
  99. package/.agent/skills/game-design-expert/SKILL.md +71 -0
  100. package/.agent/skills/game-engineering-expert/SKILL.md +88 -0
  101. package/.agent/skills/geo-fundamentals/SKILL.md +52 -178
  102. package/.agent/skills/github-operations/SKILL.md +197 -272
  103. package/.agent/skills/gsap-expert/SKILL.md +194 -0
  104. package/.agent/skills/i18n-localization/SKILL.md +60 -172
  105. package/.agent/skills/intelligent-routing/SKILL.md +123 -103
  106. package/.agent/skills/lint-and-validate/SKILL.md +8 -52
  107. package/.agent/skills/llm-engineering/SKILL.md +281 -195
  108. package/.agent/skills/local-first/SKILL.md +76 -159
  109. package/.agent/skills/mcp-builder/SKILL.md +48 -188
  110. package/.agent/skills/mobile-design/SKILL.md +213 -219
  111. package/.agent/skills/motion-engineering/SKILL.md +184 -0
  112. package/.agent/skills/nextjs-react-expert/SKILL.md +184 -203
  113. package/.agent/skills/nodejs-best-practices/SKILL.md +403 -185
  114. package/.agent/skills/observability/SKILL.md +211 -203
  115. package/.agent/skills/parallel-agents/SKILL.md +53 -146
  116. package/.agent/skills/performance-profiling/SKILL.md +171 -151
  117. package/.agent/skills/plan-writing/SKILL.md +49 -153
  118. package/.agent/skills/platform-engineer/SKILL.md +57 -103
  119. package/.agent/skills/playwright-best-practices/SKILL.md +110 -63
  120. package/.agent/skills/powershell-windows/SKILL.md +61 -179
  121. package/.agent/skills/python-patterns/SKILL.md +7 -35
  122. package/.agent/skills/python-pro/SKILL.md +273 -114
  123. package/.agent/skills/react-specialist/SKILL.md +227 -108
  124. package/.agent/skills/readme-builder/SKILL.md +15 -85
  125. package/.agent/skills/realtime-patterns/SKILL.md +216 -243
  126. package/.agent/skills/red-team-tactics/SKILL.md +10 -51
  127. package/.agent/skills/rust-pro/SKILL.md +525 -142
  128. package/.agent/skills/seo-fundamentals/SKILL.md +92 -153
  129. package/.agent/skills/server-management/SKILL.md +110 -166
  130. package/.agent/skills/shadcn-ui-expert/SKILL.md +154 -55
  131. package/.agent/skills/skill-creator/SKILL.md +18 -58
  132. package/.agent/skills/sql-pro/SKILL.md +543 -68
  133. package/.agent/skills/supabase-postgres-best-practices/SKILL.md +28 -68
  134. package/.agent/skills/swiftui-expert/SKILL.md +124 -57
  135. package/.agent/skills/systematic-debugging/SKILL.md +49 -151
  136. package/.agent/skills/tailwind-patterns/SKILL.md +433 -149
  137. package/.agent/skills/tdd-workflow/SKILL.md +63 -169
  138. package/.agent/skills/test-result-analyzer/SKILL.md +33 -73
  139. package/.agent/skills/testing-patterns/SKILL.md +437 -130
  140. package/.agent/skills/trend-researcher/SKILL.md +30 -71
  141. package/.agent/skills/ui-ux-pro-max/SKILL.md +0 -41
  142. package/.agent/skills/ui-ux-researcher/SKILL.md +51 -91
  143. package/.agent/skills/vue-expert/SKILL.md +225 -119
  144. package/.agent/skills/vulnerability-scanner/SKILL.md +264 -226
  145. package/.agent/skills/web-accessibility-auditor/SKILL.md +141 -58
  146. package/.agent/skills/web-design-guidelines/SKILL.md +17 -61
  147. package/.agent/skills/webapp-testing/SKILL.md +71 -196
  148. package/.agent/skills/whimsy-injector/SKILL.md +58 -132
  149. package/.agent/skills/workflow-optimizer/SKILL.md +28 -68
  150. package/.agent/workflows/api-tester.md +96 -224
  151. package/.agent/workflows/audit.md +81 -122
  152. package/.agent/workflows/brainstorm.md +69 -105
  153. package/.agent/workflows/changelog.md +65 -97
  154. package/.agent/workflows/create.md +73 -88
  155. package/.agent/workflows/debug.md +80 -111
  156. package/.agent/workflows/deploy.md +119 -92
  157. package/.agent/workflows/enhance.md +80 -91
  158. package/.agent/workflows/fix.md +68 -97
  159. package/.agent/workflows/generate.md +165 -164
  160. package/.agent/workflows/migrate.md +106 -109
  161. package/.agent/workflows/orchestrate.md +103 -86
  162. package/.agent/workflows/performance-benchmarker.md +77 -268
  163. package/.agent/workflows/plan.md +120 -98
  164. package/.agent/workflows/preview.md +39 -96
  165. package/.agent/workflows/refactor.md +105 -97
  166. package/.agent/workflows/review-ai.md +63 -102
  167. package/.agent/workflows/review.md +71 -110
  168. package/.agent/workflows/session.md +53 -113
  169. package/.agent/workflows/status.md +42 -88
  170. package/.agent/workflows/strengthen-skills.md +90 -51
  171. package/.agent/workflows/swarm.md +114 -129
  172. package/.agent/workflows/test.md +125 -102
  173. package/.agent/workflows/tribunal-backend.md +60 -78
  174. package/.agent/workflows/tribunal-database.md +62 -100
  175. package/.agent/workflows/tribunal-frontend.md +62 -82
  176. package/.agent/workflows/tribunal-full.md +56 -100
  177. package/.agent/workflows/tribunal-mobile.md +65 -94
  178. package/.agent/workflows/tribunal-performance.md +62 -105
  179. package/.agent/workflows/ui-ux-pro-max.md +72 -121
  180. package/README.md +11 -15
  181. package/package.json +1 -1
  182. package/.agent/skills/api-patterns/api-style.md +0 -42
  183. package/.agent/skills/api-patterns/auth.md +0 -24
  184. package/.agent/skills/api-patterns/documentation.md +0 -26
  185. package/.agent/skills/api-patterns/graphql.md +0 -41
  186. package/.agent/skills/api-patterns/rate-limiting.md +0 -31
  187. package/.agent/skills/api-patterns/response.md +0 -37
  188. package/.agent/skills/api-patterns/rest.md +0 -40
  189. package/.agent/skills/api-patterns/security-testing.md +0 -122
  190. package/.agent/skills/api-patterns/trpc.md +0 -41
  191. package/.agent/skills/api-patterns/versioning.md +0 -22
  192. package/.agent/skills/app-builder/agent-coordination.md +0 -71
  193. package/.agent/skills/app-builder/feature-building.md +0 -53
  194. package/.agent/skills/app-builder/project-detection.md +0 -34
  195. package/.agent/skills/app-builder/scaffolding.md +0 -118
  196. package/.agent/skills/app-builder/tech-stack.md +0 -40
  197. package/.agent/skills/architecture/context-discovery.md +0 -43
  198. package/.agent/skills/architecture/examples.md +0 -94
  199. package/.agent/skills/architecture/pattern-selection.md +0 -68
  200. package/.agent/skills/architecture/patterns-reference.md +0 -50
  201. package/.agent/skills/architecture/trade-off-analysis.md +0 -77
  202. package/.agent/skills/brainstorming/dynamic-questioning.md +0 -360
  203. package/.agent/skills/database-design/database-selection.md +0 -43
  204. package/.agent/skills/database-design/indexing.md +0 -39
  205. package/.agent/skills/database-design/migrations.md +0 -48
  206. package/.agent/skills/database-design/optimization.md +0 -36
  207. package/.agent/skills/database-design/orm-selection.md +0 -30
  208. package/.agent/skills/database-design/schema-design.md +0 -56
  209. package/.agent/skills/dotnet-core-expert/SKILL.md +0 -103
  210. package/.agent/skills/framer-motion-animations/SKILL.md +0 -74
  211. package/.agent/skills/frontend-design/animation-guide.md +0 -331
  212. package/.agent/skills/frontend-design/color-system.md +0 -329
  213. package/.agent/skills/frontend-design/decision-trees.md +0 -418
  214. package/.agent/skills/frontend-design/motion-graphics.md +0 -306
  215. package/.agent/skills/frontend-design/typography-system.md +0 -363
  216. package/.agent/skills/frontend-design/ux-psychology.md +0 -1116
  217. package/.agent/skills/frontend-design/visual-effects.md +0 -383
  218. package/.agent/skills/game-development/2d-games/SKILL.md +0 -119
  219. package/.agent/skills/game-development/3d-games/SKILL.md +0 -135
  220. package/.agent/skills/game-development/SKILL.md +0 -236
  221. package/.agent/skills/game-development/game-art/SKILL.md +0 -185
  222. package/.agent/skills/game-development/game-audio/SKILL.md +0 -190
  223. package/.agent/skills/game-development/game-design/SKILL.md +0 -129
  224. package/.agent/skills/game-development/mobile-games/SKILL.md +0 -108
  225. package/.agent/skills/game-development/multiplayer/SKILL.md +0 -132
  226. package/.agent/skills/game-development/pc-games/SKILL.md +0 -144
  227. package/.agent/skills/game-development/vr-ar/SKILL.md +0 -123
  228. package/.agent/skills/game-development/web-games/SKILL.md +0 -150
  229. package/.agent/skills/intelligent-routing/router-manifest.md +0 -65
  230. package/.agent/skills/mobile-design/decision-trees.md +0 -516
  231. package/.agent/skills/mobile-design/mobile-backend.md +0 -491
  232. package/.agent/skills/mobile-design/mobile-color-system.md +0 -420
  233. package/.agent/skills/mobile-design/mobile-debugging.md +0 -122
  234. package/.agent/skills/mobile-design/mobile-design-thinking.md +0 -357
  235. package/.agent/skills/mobile-design/mobile-navigation.md +0 -458
  236. package/.agent/skills/mobile-design/mobile-performance.md +0 -767
  237. package/.agent/skills/mobile-design/mobile-testing.md +0 -356
  238. package/.agent/skills/mobile-design/mobile-typography.md +0 -433
  239. package/.agent/skills/mobile-design/platform-android.md +0 -666
  240. package/.agent/skills/mobile-design/platform-ios.md +0 -561
  241. package/.agent/skills/mobile-design/touch-psychology.md +0 -537
  242. package/.agent/skills/nextjs-react-expert/1-async-eliminating-waterfalls.md +0 -312
  243. package/.agent/skills/nextjs-react-expert/2-bundle-bundle-size-optimization.md +0 -240
  244. package/.agent/skills/nextjs-react-expert/3-server-server-side-performance.md +0 -490
  245. package/.agent/skills/nextjs-react-expert/4-client-client-side-data-fetching.md +0 -264
  246. package/.agent/skills/nextjs-react-expert/5-rerender-re-render-optimization.md +0 -581
  247. package/.agent/skills/nextjs-react-expert/6-rendering-rendering-performance.md +0 -432
  248. package/.agent/skills/nextjs-react-expert/7-js-javascript-performance.md +0 -684
  249. package/.agent/skills/nextjs-react-expert/8-advanced-advanced-patterns.md +0 -150
  250. package/.agent/skills/vulnerability-scanner/checklists.md +0 -121
@@ -0,0 +1,202 @@
1
+ #!/usr/bin/env python3
2
+ """
3
+ deep_compress.py - Deep surgical compression for .agent/ markdown files (skills, agents, workflows).
4
+ Targets: repetitive boilerplate, verbose code comments, redundant example sections.
5
+ Safe: never removes H1/H2 headers, never removes HALLUCINATION TRAP lines, never removes code blocks entirely.
6
+ """
7
+
8
+ import os, re, sys
9
+
10
+ BASE_DIRS = ['.agent/skills', '.agent/agents', '.agent/workflows']
11
+
12
+ # ─── SECTION REMOVAL ─────────────────────────────────────────────────────────
13
+ # These are globally covered by GEMINI.md — strip from all files
14
+
15
+ REMOVE_SECTIONS = [
16
+ r'(?ms)^## 🏛️ Tribunal Integration.*?(?=^## |\Z)',
17
+ r'(?ms)^## Tribunal Integration.*?(?=^## |\Z)',
18
+ r'(?ms)^### ✅ Pre-Flight Self-Audit.*?(?=^### |^## |\Z)',
19
+ r'(?ms)^## Pre-Flight Self-Audit.*?(?=^## |\Z)',
20
+ r'(?ms)^## Cross-Workflow Navigation.*?(?=^## |\Z)',
21
+ r'(?ms)^## LLM Traps.*?(?=^## |\Z)',
22
+ r'(?ms)^## VBC Protocol.*?(?=^## |\Z)',
23
+ r'(?ms)^## Output Format\n```[\s\S]*?```\n',
24
+ r'(?ms)^## 🤖 LLM-Specific Traps.*?(?=^## |\Z)', # covered in GEMINI.md
25
+ ]
26
+
27
+ # ─── VERBOSE COMMENT REMOVAL IN CODE BLOCKS ──────────────────────────────────
28
+ # Removes lines that just restate the concept being shown — pure padding
29
+
30
+ VERBOSE_COMMENT_PATTERNS = [
31
+ # e.g. "// Any HTML or SVG element can be prefixed with `motion.`"
32
+ r"(?m)^(\s*)//\s*(?:Any HTML or SVG element|motion\.div, motion\.span|The MAGIC of|This is the key performance|The pattern that|Compound components share|Note that children|The action receives|Children inherit the|Import first|Parent controls when|It's always motion)\b[^\n]*\n",
33
+ # e.g. "# TypedDict gives you autocomplete..."
34
+ r"(?m)^(\s*)#\s*(?:TypedDict gives you|Usage:|Note:|Return user|Return None|Automatically)\b[^\n]*\n",
35
+ # Obvious standalone "// Usage:" label inside code blocks
36
+ r"(?m)^\s*//\s*Usage:\s*\n(?=\s*[<{])",
37
+ r"(?m)^\s*#\s*Usage:\s*\n(?=\s*[{])",
38
+ # "// When server responds..." style obvious follow-on comment
39
+ r"(?m)^\s*//\s*When (?:server responds|a component|React can interrupt|the React Compiler)[^\n]*\n",
40
+ ]
41
+
42
+ # ─── CHATTY SENTENCE REMOVAL BEFORE FIRST CODE BLOCK ─────────────────────────
43
+ # Removes motivational opener sentences: "X is a paradigm shift. If you..."
44
+
45
+ def strip_chatty_openers(content):
46
+ """Remove 2-3 sentence filler paragraphs between H1 and first ---"""
47
+ return re.sub(
48
+ r'(^# .+\n)\n.{60,}\n.{30,}\n(?:\n---)',
49
+ r'\1\n---',
50
+ content,
51
+ flags=re.MULTILINE
52
+ )
53
+
54
+ # ─── COLLAPSE NESTED IDENTICAL EXAMPLES ──────────────────────────────────────
55
+ # Many files have "// Legacy" vs "// Modern" comments — compress to 1 block
56
+
57
+ def compress_legacy_modern_blocks(content):
58
+ """Convert // LEGACY + // MODERN dual examples into compact diff-style"""
59
+ # Pattern: code block with ❌ LEGACY followed immediately by ✅ MODERN
60
+ pattern = re.compile(
61
+ r'```(\w+)\n((?:.*\n)*?.*// ❌ LEGACY[^\n]*\n(?:.*\n)*?)```\n\n```\w+\n((?:.*\n)*?.*// ✅ MODERN[^\n]*\n(?:.*\n)*?)```',
62
+ re.MULTILINE
63
+ )
64
+ # Only compress if the whole block is < 30 lines total
65
+ def compress(m):
66
+ total_lines = m.group(2).count('\n') + m.group(3).count('\n')
67
+ if total_lines > 28:
68
+ return m.group(0) # too big to safely merge — leave alone
69
+ lang = m.group(1)
70
+ legacy = m.group(2).strip()
71
+ modern = m.group(3).strip()
72
+ return f'```{lang}\n// ❌ LEGACY\n{legacy}\n\n// ✅ MODERN\n{modern}\n```'
73
+ return pattern.sub(compress, content)
74
+
75
+ # ─── STRIP EMPTY COMMENT LINES ───────────────────────────────────────────────
76
+ def strip_empty_comments(content):
77
+ """Remove lines that are ONLY // or #"""
78
+ content = re.sub(r'(?m)^\s*//\s*$\n', '', content)
79
+ content = re.sub(r'(?m)^\s*#\s*$\n', '', content)
80
+ return content
81
+
82
+ # ─── TRIM REPEATED RULES (dedup consecutive bullet points in same section) ───
83
+ def dedup_bullet_points(content):
84
+ """Remove exact duplicate bullet point lines (often copy-pasted across sections)."""
85
+ lines = content.split('\n')
86
+ seen_bullets = {}
87
+ output = []
88
+ for i, line in enumerate(lines):
89
+ stripped = line.strip()
90
+ if stripped.startswith(('✅', '❌', '- ✅', '- ❌')):
91
+ if stripped in seen_bullets and i - seen_bullets[stripped] < 80:
92
+ continue # skip duplicate within 80 lines
93
+ seen_bullets[stripped] = i
94
+ output.append(line)
95
+ return '\n'.join(output)
96
+
97
+ # ─── COLLAPSE BLANKS ─────────────────────────────────────────────────────────
98
+ def collapse_blanks(content):
99
+ return re.sub(r'\n{3,}', '\n\n', content)
100
+
101
+ # ─── REMOVE REDUNDANT IMPORTS IN COMMENTS ────────────────────────────────────
102
+ # Some files have // import { x } from "y" repeated in every example
103
+
104
+ def compress_import_repetition(content):
105
+ """If same import line appears in 3+ separate code blocks, add a note and strip repetitions."""
106
+ import_line = re.compile(r'import \{[^}]+\} from "[^"]+";')
107
+ matches = import_line.findall(content)
108
+ freq = {}
109
+ for m in matches:
110
+ freq[m] = freq.get(m, 0) + 1
111
+
112
+ for imp, count in freq.items():
113
+ if count >= 4:
114
+ # First occurrence: keep it. Subsequent ones: replace with comment
115
+ first_done = [False]
116
+ def replacer(m, imp=imp, first_done=first_done):
117
+ if m.group(0) == imp:
118
+ if not first_done[0]:
119
+ first_done[0] = True
120
+ return m.group(0)
121
+ return f'// {imp} ← (already imported above)'
122
+ return m.group(0)
123
+ content = import_line.sub(replacer, content)
124
+ return content
125
+
126
+ # ─── MAIN PIPELINE ──────────────────────────────────────────────────────────
127
+
128
+ def compress_file(path):
129
+ with open(path, 'r', encoding='utf-8', errors='ignore') as f:
130
+ original = f.read()
131
+
132
+ content = original
133
+
134
+ # 1. Strip global boilerplate sections
135
+ for pattern in REMOVE_SECTIONS:
136
+ content = re.sub(pattern, '', content)
137
+
138
+ # 2. Strip chatty openers
139
+ content = strip_chatty_openers(content)
140
+
141
+ # 3. Compress legacy/modern dual blocks
142
+ content = compress_legacy_modern_blocks(content)
143
+
144
+ # 4. Verbose inline code comment removal
145
+ for pattern in VERBOSE_COMMENT_PATTERNS:
146
+ content = re.sub(pattern, '', content)
147
+
148
+ # 5. Strip empty comment lines
149
+ content = strip_empty_comments(content)
150
+
151
+ # 6. Deduplicate bullet points
152
+ content = dedup_bullet_points(content)
153
+
154
+ # 7. Collapse 3+ blank lines
155
+ content = collapse_blanks(content)
156
+
157
+ # Write back only if changed
158
+ if content.strip() != original.strip():
159
+ with open(path, 'w', encoding='utf-8') as f:
160
+ f.write(content.strip() + '\n')
161
+
162
+ return len(original), len(content)
163
+
164
+ def main():
165
+ total_orig = 0
166
+ total_new = 0
167
+ file_results = []
168
+
169
+ for base in BASE_DIRS:
170
+ if not os.path.exists(base):
171
+ continue
172
+ for root, _, files in os.walk(base):
173
+ for fname in files:
174
+ if fname.endswith('.md'):
175
+ path = os.path.join(root, fname)
176
+ orig, new = compress_file(path)
177
+ total_orig += orig
178
+ total_new += new
179
+ saved = orig - new
180
+ if saved > 200:
181
+ rel = os.path.relpath(path, '.')
182
+ file_results.append((saved, rel))
183
+
184
+ file_results.sort(reverse=True)
185
+
186
+ saved_total = total_orig - total_new
187
+ pct = saved_total / total_orig * 100 if total_orig else 0
188
+
189
+ print(f"\n{'='*58}")
190
+ print(f" Deep Compression Complete")
191
+ print(f"{'='*58}")
192
+ print(f" Original : {total_orig:,} bytes ({total_orig//1024}KB)")
193
+ print(f" After : {total_new:,} bytes ({total_new//1024}KB)")
194
+ print(f" Saved : {saved_total:,} bytes ({saved_total//1024}KB) — {pct:.1f}%")
195
+ print(f"\n Top savings:")
196
+ for saved, path in file_results[:20]:
197
+ skill = '/'.join(path.replace('\\','/').split('/')[-2:])
198
+ print(f" -{saved//1024:2}KB {skill}")
199
+ print()
200
+
201
+ if __name__ == '__main__':
202
+ main()
@@ -0,0 +1,80 @@
1
+ import os
2
+ import re
3
+
4
+ def minify_markdown(file_path):
5
+ with open(file_path, 'r', encoding='utf-8') as f:
6
+ content = f.read()
7
+
8
+ original_len = len(content)
9
+
10
+ # 1. Strip repetitive Output Format templates (These are huge and the LLM already knows how to output the Tribunal format from GEMINI.md)
11
+ content = re.sub(r'## Output Format\n\n```[\s\S]*?```\n', '', content)
12
+
13
+ # 2. Convert bloated Cross-Workflow Navigation tables to dense YAML lists
14
+ # Find tables under Cross-Workflow Navigation
15
+ def replace_table_with_list(match):
16
+ table_text = match.group(0)
17
+ lines = table_text.strip().split('\n')
18
+ out = []
19
+ for line in lines:
20
+ if line.startswith('|') and not line.startswith('|:') and not line.startswith('| After'):
21
+ parts = [p.strip() for p in line.split('|') if p.strip()]
22
+ if len(parts) >= 2:
23
+ out.append(f"- {parts[0]} -> {parts[1]}")
24
+ return "\n".join(out) + "\n"
25
+
26
+ content = re.sub(r'## Cross-Workflow Navigation\n\n\|.*?\|[\s\S]*?(?=\n## |\Z)', lambda m: '## Cross-Workflow Navigation\n' + replace_table_with_list(m), content)
27
+
28
+ # 3. Collapse multiple empty lines into a single one
29
+ content = re.sub(r'\n{3,}', '\n\n', content)
30
+
31
+ # 4. Remove padding from remaining tables to save space tokens
32
+ def unpad_table(match):
33
+ line = match.group(0)
34
+ # remove spaces around |
35
+ line = re.sub(r'\s+\|\s+', '|', line)
36
+ line = re.sub(r'\|\s+', '|', line)
37
+ line = re.sub(r'\s+\|', '|', line)
38
+ return line
39
+ content = re.sub(r'^\|.+|$', unpad_table, content, flags=re.MULTILINE)
40
+
41
+ # 5. Remove conversational blockquotes > if they don't contain WARNING/NOTE/IMPORTANT
42
+ def remove_conversational_quotes(match):
43
+ text = match.group(0)
44
+ if '⚠️' in text or 'WARNING' in text or 'CRITICAL' in text or '!' in text:
45
+ return text
46
+ # Otherwise just return the text without quote
47
+ return text.replace('> ', '').replace('>', '')
48
+ content = re.sub(r'^>.*$', remove_conversational_quotes, content, flags=re.MULTILINE)
49
+
50
+ # 6. Dense Examples (convert ❌ Bad: and ✅ Good: blocks to single lines)
51
+ content = content.replace('\n❌ Bad:', ' ❌')
52
+ content = content.replace('\n✅ Good:', ' ✅')
53
+
54
+ with open(file_path, 'w', encoding='utf-8') as f:
55
+ f.write(content)
56
+
57
+ return original_len, len(content)
58
+
59
+ def main():
60
+ agent_dir = os.path.join('.agent')
61
+ total_original = 0
62
+ total_new = 0
63
+
64
+ for root, _, files in os.walk(agent_dir):
65
+ for file in files:
66
+ if file.endswith('.md'):
67
+ file_path = os.path.join(root, file)
68
+ orig, new = minify_markdown(file_path)
69
+ total_original += orig
70
+ total_new += new
71
+
72
+ saved = total_original - total_new
73
+ percent = (saved / total_original * 100) if total_original > 0 else 0
74
+ print(f"Minification Complete.")
75
+ print(f"Original size: {total_original} bytes")
76
+ print(f"New size: {total_new} bytes")
77
+ print(f"Saved: {saved} bytes ({percent:.1f}%)")
78
+
79
+ if __name__ == '__main__':
80
+ main()
@@ -32,7 +32,7 @@ BOLD = "\033[1m"
32
32
  RESET = "\033[0m"
33
33
 
34
34
  SOURCE_EXTENSIONS = {".ts", ".tsx", ".js", ".jsx", ".py", ".go", ".java", ".rb"}
35
- SKIP_DIRS = {"node_modules", ".git", "dist", "build", "__pycache__", ".agent", ".next", "vendor"}
35
+ SKIP_DIRS = {"node_modules", ".git", "dist", "build", "__pycache__", ".agent", ".next", "vendor", "coverage", "lcov-report", ".nyc_output", "test-results", ".jest-cache"}
36
36
 
37
37
 
38
38
  @dataclass
@@ -0,0 +1,41 @@
1
+ import os
2
+ import re
3
+
4
+ def strip_boilerplate(file_path):
5
+ with open(file_path, 'r', encoding='utf-8') as f:
6
+ content = f.read()
7
+
8
+ original_len = len(content)
9
+
10
+ # Regex to find everything from "## 🏛️ Tribunal Integration" (or without emojis) to the end of the file or next major H1
11
+ # Often it appears at the end of agents
12
+ content = re.sub(r'## 🏛️ Tribunal Integration[\s\S]*?(?=\n# |\Z)', '', content)
13
+ content = re.sub(r'## Tribunal Integration[\s\S]*?(?=\n# |\Z)', '', content)
14
+
15
+ # Strip Cross-Workflow Navigation since GEMINI.md has global handling
16
+ content = re.sub(r'## Cross-Workflow Navigation[\s\S]*?(?=\n# |\Z)', '', content)
17
+
18
+ # Strip What the Maker Is Not Allowed to Do (it's in GEMINI.md)
19
+ content = re.sub(r'## What the Maker Is Not Allowed to Do[\s\S]*?(?=\n# |\Z)', '', content)
20
+
21
+ with open(file_path, 'w', encoding='utf-8') as f:
22
+ f.write(content.strip() + '\n')
23
+
24
+ return original_len, len(content)
25
+
26
+ def main():
27
+ dirs_to_check = ['.agent/agents', '.agent/workflows']
28
+ total_stripped = 0
29
+
30
+ for d in dirs_to_check:
31
+ if not os.path.exists(d): continue
32
+ for file in os.listdir(d):
33
+ if file.endswith('.md'):
34
+ file_path = os.path.join(d, file)
35
+ orig, new = strip_boilerplate(file_path)
36
+ total_stripped += (orig - new)
37
+
38
+ print(f"Stripped {total_stripped} bytes of repetitive boilerplate.")
39
+
40
+ if __name__ == '__main__':
41
+ main()
@@ -1,132 +1,92 @@
1
1
  ---
2
2
  name: agent-organizer
3
- description: Senior agent organizer with expertise in assembling and coordinating multi-agent teams. Your focus spans task analysis, agent capability mapping, workflow design, and team optimization.
3
+ description: Master Agent orchestration framework. Coordination of sub-agents, workflow definitions, delegation patterns, state management across conversations, memory distillation, and execution loops. Use when assembling multi-agent systems or managing complex agent-to-agent architectures.
4
4
  allowed-tools: Read, Write, Edit, Glob, Grep
5
- version: 1.0.0
6
- last-updated: 2026-03-12
5
+ version: 2.0.0
6
+ last-updated: 2026-04-02
7
7
  applies-to-model: gemini-2.5-pro, claude-3-7-sonnet
8
8
  ---
9
9
 
10
- # Agent Organizer - Claude Code Sub-Agent
11
-
12
- You are a senior agent organizer with expertise in assembling and coordinating multi-agent teams. Your focus spans task analysis, agent capability mapping, workflow design, and team optimization with emphasis on selecting the right agents for each task and ensuring efficient collaboration.
13
-
14
- ## Configuration & Context Assessment
15
- When invoked:
16
- 1. Query context manager for task requirements and available agents
17
- 2. Review agent capabilities, performance history, and current workload
18
- 3. Analyze task complexity, dependencies, and optimization opportunities
19
- 4. Orchestrate agent teams for maximum efficiency and success
20
-
21
- ---
22
-
23
- ## The Orchestration Excellence Checklist
24
- - Agent selection accuracy > 95% achieved
25
- - Task completion rate > 99% maintained
26
- - Resource utilization optimal consistently
27
- - Response time < 5s ensured
28
- - Error recovery automated properly
29
- - Cost tracking enabled thoroughly
30
- - Performance monitored continuously
31
- - Team synergy maximized effectively
10
+ # Agent Organizer — Multi-Agent Orchestration Mastery
32
11
 
33
12
  ---
34
13
 
35
- ## Core Architecture Decision Framework
36
-
37
- ### Task Analysis & Dependency Mapping
38
- * **Decomposition:** Requirement analysis, Subtask identification, Dependency mapping, Complexity assessment, Timeline planning.
39
- * **Dependency Management:** Resource dependencies, Data dependencies, Priority handling, Conflict resolution, Deadlock prevention.
40
-
41
- ### Agent Capability Mapping & Selection
42
- * **Capability Matching:** Skill inventory, Performance metrics, Specialization areas, Availability status, Compatibility matrix.
43
- * **Selection Criteria:** Capability matching, Cost considerations, Load balancing, Specialization mapping, Backup selection.
14
+ ## 1. The Delegation Sub-Agent Pattern
15
+
16
+ Agents should defer specific domain problems to specialized sub-agents.
17
+
18
+ ```json
19
+ // Define the payload contract the Worker Agent expects
20
+ {
21
+ "taskId": "task-auth-migration-01",
22
+ "workerRole": "api-security-auditor",
23
+ "isolatedContext": {
24
+ "filesToScan": ["src/login.ts", "src/middleware.ts"],
25
+ "objective": "Identify unprotected mass assignments"
26
+ },
27
+ "requiredOutputFormat": "json_list"
28
+ }
29
+ ```
44
30
 
45
- ### Workflow Design & Team Dynamics
46
- * **Workflow Design:** Process modeling, Control flow design, Error handling paths, Checkpoint definition, Result aggregation.
47
- * **Team Assembly:** Optimal composition, Role assignment, Communication setup, Coordination rules, Conflict resolution.
48
- * **Orchestration Patterns:** Sequential execution, Parallel processing, Pipeline/Map-reduce workflows, Event-driven coordination.
31
+ ### Delegation Rules:
32
+ 1. **Never pass full histories:** Do not pass the entire conversation history to a worker sub-agent. Extract only the exact files and goal context required. (Context Window Budgeting).
33
+ 2. **Clear Boundaries:** If the worker is fixing CSS, it must not invent logic for the database.
34
+ 3. **Structured Handoff:** The parent agent requests JSON from the worker, parses it, and then acts. Let machines talk to machines through syntax, not prose.
49
35
 
50
36
  ---
51
37
 
52
- ## Output Format
38
+ ## 2. Execution Loops (Supervisor Pattern)
53
39
 
54
- When this skill completes a task, structure your output as:
40
+ A Supervisor decides *who* works and *when*, but does not execute the work.
55
41
 
56
42
  ```
57
- ━━━ Agent Organizer Output ━━━━━━━━━━━━━━━━━━━━━━━━
58
- Task: [what was performed]
59
- Result: [outcome summary one line]
60
- ─────────────────────────────────────────────────
61
- Checks: ✅ [N passed] · ⚠️ [N warnings] · ❌ [N blocked]
62
- VBC status: PENDING VERIFIED
63
- Evidence: [link to terminal output, test result, or file diff]
43
+ [User Request: "Add OAuth and secure it"]
44
+ |
45
+ [Supervisor Agent analyzing required skills...]
46
+ |
47
+ ├─> [Dispatches: authentication-best-practices]
48
+ | (Worker builds OAuth implementation)
49
+ |
50
+ ├─> [Dispatches: api-security-auditor]
51
+ | (Worker reviews implementation against OWASP)
52
+ |
53
+ [Supervisor Agent synthesizes findings]
54
+ |
55
+ [Action Executed / Git Commit]
64
56
  ```
65
57
 
58
+ ### Handoff Signals
59
+ A worker must return definitive state signals when yielding control:
60
+ - `COMPLETE`: Goal achieved. Final diff generated.
61
+ - `BLOCKED`: Missing context (e.g., "I need the `.env` schema").
62
+ - `ERROR`: Script failed, requires manual Supervisor intervention.
66
63
 
67
64
  ---
68
65
 
69
- ## 🏛️ Tribunal Integration (Anti-Hallucination)
66
+ ## 3. Session State Management (Memory)
70
67
 
71
- **Slash command: `/orchestrate`** (or invoke directly for agent organization)
72
- **Active reviewers: `logic`**
68
+ Agents lose memory across boundaries. The Organizer must explicitly persist context.
73
69
 
74
- ### Forbidden AI Tropes in Agent Orchestration
75
- 1. **Invoking Non-Existent Agents** never assign tasks to agents or tools that do not explicitly exist in the workspace `.agent/skills/` directory.
76
- 2. **Infinite Delegation Loops** avoid cyclical dependencies where Agent A waits on Agent B, who waits on Agent A; mandate strict DAG (Directed Acyclic Graph) workflow structures.
77
- 3. **Silent Failures** — never build orchestration flows that drop errors silently; always require explicit "Error recovery automated properly" handling.
78
- 4. **Context Saturation** — never pass the entire multi-agent context dump to a specific sub-agent; extract and pass only the needed inputs.
79
- 5. **Vague Success Criteria** — do not assign tasks without explicit verification steps or deterministic outputs.
70
+ 1. **Short-Term Context:** Maintained natively in the active LLM context window.
71
+ 2. **Task State:** Maintained locally in `task.md`. Workers check-in and check-out checkboxes.
72
+ 3. **Long-Term Memory:** "Knowledge Items" (KIs). Distilling massive conversations down into a single `learnings.json` file injected on subsequent startups.
80
73
 
81
- ### ✅ Pre-Flight Self-Audit
82
-
83
- Review these questions before generating a multi-agent workflow or orchestration plan:
84
- ```text
85
- Did I verify that every agent requested actually exists in the local environment?
86
- Is the workflow designed as a strict DAG to prevent deadlock?
87
- ✅ Did I define exactly what data format each sub-agent must return to the aggregator?
88
- ✅ Are cost constraints and resource utilization optimizations explicitly planned?
89
- ✅ Have I mapped the dependencies correctly to enable parallel processing where appropriate?
74
+ ```markdown
75
+ <!-- task.md (The Global Execution State) -->
76
+ # Current Objective: Build Chat Feature
77
+ - [x] Initialize websocket connection
78
+ - [/] (Worker: frontend-specialist) Build Chat UI component
79
+ - [ ] (Worker: realtime-patterns) Implement presence sync
90
80
  ```
91
81
 
92
-
93
82
  ---
94
83
 
95
- ## 🤖 LLM-Specific Traps
84
+ ## 4. The Human-in-the-Loop (Socratic Gate)
96
85
 
97
- AI coding assistants often fall into specific bad habits when dealing with this domain. These are strictly forbidden:
86
+ Automation without oversight is reckless. The Organizer manages when to pause and query the human.
98
87
 
99
- 1. **Over-engineering:** Proposing complex abstractions or distributed systems when a simpler approach suffices.
100
- 2. **Hallucinated Libraries/Methods:** Using non-existent methods or packages. Always `// VERIFY` or check `package.json` / `requirements.txt`.
101
- 3. **Skipping Edge Cases:** Writing the "happy path" and ignoring error handling, timeouts, or data validation.
102
- 4. **Context Amnesia:** Forgetting the user's constraints and offering generic advice instead of tailored solutions.
103
- 5. **Silent Degradation:** Catching and suppressing errors without logging or re-raising.
88
+ **Mandatory Gates:**
89
+ 1. **Approval Gate (Before Execution):** "I have drafted the architecture plan. Do you approve execution?"
90
+ 2. **Recovery Gate (After 3 Failures):** "The database migration script has failed 3 times. I am halting. How would you like to proceed?"
104
91
 
105
92
  ---
106
-
107
- ## 🏛️ Tribunal Integration (Anti-Hallucination)
108
-
109
- **Slash command: `/review` or `/tribunal-full`**
110
- **Active reviewers: `logic-reviewer` · `security-auditor`**
111
-
112
- ### ❌ Forbidden AI Tropes
113
-
114
- 1. **Blind Assumptions:** Never make an assumption without documenting it clearly with `// VERIFY: [reason]`.
115
- 2. **Silent Degradation:** Catching and suppressing errors without logging or handling.
116
- 3. **Context Amnesia:** Forgetting the user's constraints and offering generic advice instead of tailored solutions.
117
-
118
- ### ✅ Pre-Flight Self-Audit
119
-
120
- Review these questions before confirming output:
121
- ```
122
- ✅ Did I rely ONLY on real, verified tools and methods?
123
- ✅ Is this solution appropriately scoped to the user's constraints?
124
- ✅ Did I handle potential failure modes and edge cases?
125
- ✅ Have I avoided generic boilerplate that doesn't add value?
126
- ```
127
-
128
- ### 🛑 Verification-Before-Completion (VBC) Protocol
129
-
130
- **CRITICAL:** You must follow a strict "evidence-based closeout" state machine.
131
- - ❌ **Forbidden:** Declaring a task complete because the output "looks correct."
132
- - ✅ **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.
@@ -9,9 +9,6 @@ applies-to-model: gemini-2.5-pro, claude-3-7-sonnet
9
9
 
10
10
  # Agentic Patterns
11
11
 
12
- > An agent is a loop. A good agent is a loop with clear termination conditions and a human override.
13
- > An agent without guardrails is a liability, not a feature.
14
-
15
12
  ---
16
13
 
17
14
  ## The Agent Loop
@@ -265,71 +262,4 @@ VBC status: PENDING → VERIFIED
265
262
  Evidence: [link to terminal output, test result, or file diff]
266
263
  ```
267
264
 
268
-
269
- ---
270
-
271
- ## 🏛️ Tribunal Integration (Anti-Hallucination)
272
-
273
- **Slash command: `/review-ai`**
274
- **Active reviewers: `logic` · `security` · `ai-code-reviewer`**
275
-
276
- ### ❌ Forbidden AI Tropes in Agentic Systems
277
-
278
- 1. **Infinite loops** — any agent loop without `MAX_STEPS` will spin until context limit or cost limit is hit. Always define a hard cap.
279
- 2. **No human override** — agents operating on user data with no human gate for destructive or irreversible actions.
280
- 3. **Trusting tool output as ground truth** — tool results can be wrong, stale, or injected. Always validate before acting on them.
281
- 4. **Overly broad tool permissions** — an agent that can "run any shell command" or "access any database table" violates least privilege.
282
- 5. **No cost cap** — `Promise.all(100 tasks × $0.10 each)` = $10 surprise bill per trigger. Set cost limits at the session level.
283
-
284
- ### ✅ Pre-Flight Self-Audit
285
-
286
- ```
287
- ✅ Is there a hard MAX_STEPS limit on every agent loop?
288
- ✅ Are irreversible actions gated behind human approval?
289
- ✅ Are tool results validated before being acted upon?
290
- ✅ Does each agent follow least-privilege tool access (not "all tools")?
291
- ✅ Is there a per-session token and cost cap?
292
- ✅ Is there an output guardrail checking for hallucinated citations or schema violations?
293
- ```
294
-
295
-
296
- ---
297
-
298
- ## 🤖 LLM-Specific Traps
299
-
300
- AI coding assistants often fall into specific bad habits when dealing with this domain. These are strictly forbidden:
301
-
302
- 1. **Over-engineering:** Proposing complex abstractions or distributed systems when a simpler approach suffices.
303
- 2. **Hallucinated Libraries/Methods:** Using non-existent methods or packages. Always `// VERIFY` or check `package.json` / `requirements.txt`.
304
- 3. **Skipping Edge Cases:** Writing the "happy path" and ignoring error handling, timeouts, or data validation.
305
- 4. **Context Amnesia:** Forgetting the user's constraints and offering generic advice instead of tailored solutions.
306
- 5. **Silent Degradation:** Catching and suppressing errors without logging or re-raising.
307
-
308
265
  ---
309
-
310
- ## 🏛️ Tribunal Integration (Anti-Hallucination)
311
-
312
- **Slash command: `/review` or `/tribunal-full`**
313
- **Active reviewers: `logic-reviewer` · `security-auditor`**
314
-
315
- ### ❌ Forbidden AI Tropes
316
-
317
- 1. **Blind Assumptions:** Never make an assumption without documenting it clearly with `// VERIFY: [reason]`.
318
- 2. **Silent Degradation:** Catching and suppressing errors without logging or handling.
319
- 3. **Context Amnesia:** Forgetting the user's constraints and offering generic advice instead of tailored solutions.
320
-
321
- ### ✅ Pre-Flight Self-Audit
322
-
323
- Review these questions before confirming output:
324
- ```
325
- ✅ Did I rely ONLY on real, verified tools and methods?
326
- ✅ Is this solution appropriately scoped to the user's constraints?
327
- ✅ Did I handle potential failure modes and edge cases?
328
- ✅ Have I avoided generic boilerplate that doesn't add value?
329
- ```
330
-
331
- ### 🛑 Verification-Before-Completion (VBC) Protocol
332
-
333
- **CRITICAL:** You must follow a strict "evidence-based closeout" state machine.
334
- - ❌ **Forbidden:** Declaring a task complete because the output "looks correct."
335
- - ✅ **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.