tribunal-kit 9.2.7 → 9.2.8

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 (801) hide show
  1. package/.agent/ARCHITECTURE.md +2 -2
  2. package/.agent/data/skill_certification_ledger.jsonl +40 -0
  3. package/.agent/data/skill_ontology.json +138 -0
  4. package/.agent/history/architecture-model.json +11656 -4996
  5. package/.agent/history/architecture-verification.json +9 -37
  6. package/.agent/routing_index.json +2430 -2069
  7. package/.agent/scripts/adaptive_execution.js +221 -28
  8. package/.agent/scripts/architecture_diff.js +303 -303
  9. package/.agent/scripts/architecture_extractor.js +792 -792
  10. package/.agent/scripts/architecture_health.js +293 -293
  11. package/.agent/scripts/architecture_verifier.js +303 -303
  12. package/.agent/scripts/architecture_visualizer.js +1988 -880
  13. package/.agent/scripts/blast_radius_engine.js +274 -274
  14. package/.agent/scripts/capability_evolution.js +102 -0
  15. package/.agent/scripts/context_broker.js +397 -31
  16. package/.agent/scripts/corpus_certification_orchestrator.js +502 -0
  17. package/.agent/scripts/corpus_validation_engine.js +311 -0
  18. package/.agent/scripts/engineering_memory.js +129 -0
  19. package/.agent/scripts/final_corpus_validation_engine.js +405 -0
  20. package/.agent/scripts/intent_extractor.js +130 -0
  21. package/.agent/scripts/outcome_engine.js +15 -0
  22. package/.agent/scripts/routing_evaluation_engine.js +184 -0
  23. package/.agent/scripts/skill_behavior_classifier.js +90 -0
  24. package/.agent/scripts/skill_behavior_harness.js +105 -0
  25. package/.agent/scripts/skill_certification_engine.js +586 -0
  26. package/.agent/scripts/skill_contract_engine.js +424 -0
  27. package/.agent/scripts/skill_coverage_expansion_engine.js +505 -0
  28. package/.agent/scripts/skill_evidence_acquisition_engine.js +535 -0
  29. package/.agent/scripts/skill_evidence_engine.js +83 -0
  30. package/.agent/scripts/skill_expectation_engine.js +38 -0
  31. package/.agent/scripts/skill_fixture_engine.js +24 -0
  32. package/.agent/scripts/skill_human_validation.js +32 -0
  33. package/.agent/scripts/skill_intelligence.js +89 -160
  34. package/.agent/scripts/skill_observation_engine.js +25 -0
  35. package/.agent/scripts/skill_ontology_engine.js +83 -0
  36. package/.agent/scripts/skill_quality_engine.js +343 -0
  37. package/.agent/scripts/skill_reconstruction_engine.js +164 -0
  38. package/.agent/scripts/skill_remediation_engine.js +326 -0
  39. package/.agent/scripts/skill_scenario_engine.js +108 -0
  40. package/.agent/scripts/skill_test_authoring_engine.js +1011 -0
  41. package/.agent/scripts/validation_engine.js +236 -236
  42. package/.agent/scripts/verification_auditor.js +80 -0
  43. package/.agent/skill_topic_map.json +301 -301
  44. package/.agent/skills/12-principles-of-animation/SKILL.md +9 -0
  45. package/.agent/skills/60fps-animation/SKILL.md +14 -0
  46. package/.agent/skills/accessible-animation/SKILL.md +9 -0
  47. package/.agent/skills/adapt/SKILL.md +8 -0
  48. package/.agent/skills/adr-generation/SKILL.md +9 -0
  49. package/.agent/skills/advanced-rag-pipelines/SKILL.md +9 -0
  50. package/.agent/skills/agent-organizer/SKILL.md +8 -0
  51. package/.agent/skills/agent-syscall-guidelines/SKILL.md +10 -0
  52. package/.agent/skills/agentic-patterns/SKILL.md +9 -0
  53. package/.agent/skills/agentic-workflows-2026/SKILL.md +8 -0
  54. package/.agent/skills/agentshield-security/SKILL.md +16 -0
  55. package/.agent/skills/ai-app-hardening/SKILL.md +7 -0
  56. package/.agent/skills/ai-prompt-injection-defense/SKILL.md +9 -0
  57. package/.agent/skills/animation-on-scroll/SKILL.md +9 -0
  58. package/.agent/skills/animation-systems/SKILL.md +8 -0
  59. package/.agent/skills/antfu-conventions/SKILL.md +9 -0
  60. package/.agent/skills/anti-slop-enforcement/SKILL.md +11 -0
  61. package/.agent/skills/api-patterns/SKILL.md +9 -0
  62. package/.agent/skills/api-security-auditor/SKILL.md +10 -0
  63. package/.agent/skills/app-builder/SKILL.md +8 -0
  64. package/.agent/skills/appflow-wireframe/SKILL.md +9 -0
  65. package/.agent/skills/apple-design/SKILL.md +8 -0
  66. package/.agent/skills/architecture/SKILL.md +8 -0
  67. package/.agent/skills/architecture-drift/SKILL.md +9 -0
  68. package/.agent/skills/architecture-intelligence/SKILL.md +17 -0
  69. package/.agent/skills/audit-and-fix/SKILL.md +8 -0
  70. package/.agent/skills/authentication-best-practices/SKILL.md +10 -0
  71. package/.agent/skills/autonomous-execution/SKILL.md +9 -0
  72. package/.agent/skills/backend-alembic/SKILL.md +16 -0
  73. package/.agent/skills/backend-architecture-auditor/SKILL.md +16 -0
  74. package/.agent/skills/backend-mongodb/SKILL.md +10 -0
  75. package/.agent/skills/backend-mysql/SKILL.md +16 -0
  76. package/.agent/skills/backend-performance-auditor/SKILL.md +10 -0
  77. package/.agent/skills/backend-postgresql/SKILL.md +10 -0
  78. package/.agent/skills/backend-redis/SKILL.md +10 -0
  79. package/.agent/skills/backend-security-expert/SKILL.md +10 -0
  80. package/.agent/skills/backend-sqlalchemy/SKILL.md +10 -0
  81. package/.agent/skills/backend-sqlite/SKILL.md +10 -0
  82. package/.agent/skills/backend-testing-auditor/SKILL.md +15 -0
  83. package/.agent/skills/baseline-ui/SKILL.md +8 -0
  84. package/.agent/skills/bash-linux/SKILL.md +9 -0
  85. package/.agent/skills/behavioral-modes/SKILL.md +9 -0
  86. package/.agent/skills/better-colors/SKILL.md +9 -0
  87. package/.agent/skills/better-typography/SKILL.md +9 -0
  88. package/.agent/skills/better-ui/SKILL.md +8 -0
  89. package/.agent/skills/bolder/SKILL.md +8 -0
  90. package/.agent/skills/brainstorming/SKILL.md +8 -0
  91. package/.agent/skills/browser-audit/SKILL.md +9 -0
  92. package/.agent/skills/browser-native-ai/SKILL.md +8 -0
  93. package/.agent/skills/build-primitive/SKILL.md +8 -0
  94. package/.agent/skills/building-native-ui/SKILL.md +7 -0
  95. package/.agent/skills/cicd-pro/SKILL.md +9 -0
  96. package/.agent/skills/clarify/SKILL.md +8 -0
  97. package/.agent/skills/clean-code/SKILL.md +8 -0
  98. package/.agent/skills/cloud-architect/SKILL.md +8 -0
  99. package/.agent/skills/cobejs/SKILL.md +8 -0
  100. package/.agent/skills/code-review-checklist/SKILL.md +9 -0
  101. package/.agent/skills/codebase-design/SKILL.md +14 -0
  102. package/.agent/skills/colorize/SKILL.md +8 -0
  103. package/.agent/skills/compact-landing/SKILL.md +9 -0
  104. package/.agent/skills/company-logos/SKILL.md +9 -0
  105. package/.agent/skills/config-validator/SKILL.md +9 -0
  106. package/.agent/skills/containerization-pro/SKILL.md +9 -0
  107. package/.agent/skills/context-engineering-pro/SKILL.md +10 -0
  108. package/.agent/skills/create-design-md/SKILL.md +7 -0
  109. package/.agent/skills/critique/SKILL.md +8 -0
  110. package/.agent/skills/csharp-developer/SKILL.md +9 -0
  111. package/.agent/skills/data-validation-schemas/SKILL.md +8 -0
  112. package/.agent/skills/database-design/SKILL.md +8 -0
  113. package/.agent/skills/delight/SKILL.md +8 -0
  114. package/.agent/skills/deployment-procedures/SKILL.md +9 -0
  115. package/.agent/skills/design-lab/SKILL.md +8 -0
  116. package/.agent/skills/devops-engineer/SKILL.md +9 -0
  117. package/.agent/skills/devops-incident-responder/SKILL.md +16 -0
  118. package/.agent/skills/diagnosing-bugs/SKILL.md +9 -0
  119. package/.agent/skills/distill/SKILL.md +8 -0
  120. package/.agent/skills/documentation-templates/SKILL.md +9 -0
  121. package/.agent/skills/domain-modeling/SKILL.md +9 -0
  122. package/.agent/skills/duckdb-analytical-sql/SKILL.md +10 -0
  123. package/.agent/skills/edge-ai-mobile/SKILL.md +8 -0
  124. package/.agent/skills/edge-computing/SKILL.md +9 -0
  125. package/.agent/skills/emil-design-eng/SKILL.md +9 -0
  126. package/.agent/skills/error-resilience/SKILL.md +8 -0
  127. package/.agent/skills/expo-router-v4/SKILL.md +9 -0
  128. package/.agent/skills/extract-design-system/SKILL.md +9 -0
  129. package/.agent/skills/fabel-protocol/SKILL.md +9 -0
  130. package/.agent/skills/failure-mode-analysis/SKILL.md +10 -0
  131. package/.agent/skills/fastapi-pro/SKILL.md +9 -0
  132. package/.agent/skills/fixing-accessibility/SKILL.md +9 -0
  133. package/.agent/skills/fixing-metadata/SKILL.md +9 -0
  134. package/.agent/skills/fixing-motion-performance/SKILL.md +9 -0
  135. package/.agent/skills/framer-motion-expert/SKILL.md +9 -0
  136. package/.agent/skills/frontend-design/SKILL.md +7 -0
  137. package/.agent/skills/frontend-security-expert/SKILL.md +9 -0
  138. package/.agent/skills/game-design-expert/SKILL.md +9 -0
  139. package/.agent/skills/game-engineering-expert/SKILL.md +16 -0
  140. package/.agent/skills/generative-ui-expert/SKILL.md +9 -0
  141. package/.agent/skills/geo-fundamentals/SKILL.md +9 -0
  142. package/.agent/skills/git-pro/SKILL.md +9 -0
  143. package/.agent/skills/github-operations/SKILL.md +9 -0
  144. package/.agent/skills/gpt-taste/SKILL.md +9 -0
  145. package/.agent/skills/graph-engineering/SKILL.md +16 -0
  146. package/.agent/skills/gsap-core/SKILL.md +9 -0
  147. package/.agent/skills/gsap-frameworks/SKILL.md +9 -0
  148. package/.agent/skills/gsap-performance/SKILL.md +9 -0
  149. package/.agent/skills/gsap-plugins/SKILL.md +9 -0
  150. package/.agent/skills/gsap-react/SKILL.md +9 -0
  151. package/.agent/skills/gsap-scrolltrigger/SKILL.md +9 -0
  152. package/.agent/skills/gsap-timeline/SKILL.md +9 -0
  153. package/.agent/skills/gsap-utils/SKILL.md +9 -0
  154. package/.agent/skills/harden/SKILL.md +8 -0
  155. package/.agent/skills/harness-protocol/SKILL.md +9 -0
  156. package/.agent/skills/hf-cli/SKILL.md +11 -0
  157. package/.agent/skills/hf-cloud-aws-context-discovery/SKILL.md +10 -0
  158. package/.agent/skills/hf-cloud-python-env-setup/SKILL.md +10 -0
  159. package/.agent/skills/hf-cloud-sagemaker-deployment-planner/SKILL.md +10 -0
  160. package/.agent/skills/hf-cloud-sagemaker-iam-preflight/SKILL.md +10 -0
  161. package/.agent/skills/hf-cloud-sagemaker-production-defaults/SKILL.md +10 -0
  162. package/.agent/skills/hf-cloud-serving-image-selection/SKILL.md +10 -0
  163. package/.agent/skills/hf-mem/SKILL.md +11 -0
  164. package/.agent/skills/huggingface-best/SKILL.md +9 -0
  165. package/.agent/skills/huggingface-community-evals/SKILL.md +11 -0
  166. package/.agent/skills/huggingface-datasets/SKILL.md +10 -0
  167. package/.agent/skills/huggingface-gradio/SKILL.md +10 -0
  168. package/.agent/skills/huggingface-llm-trainer/SKILL.md +10 -0
  169. package/.agent/skills/huggingface-local-models/SKILL.md +10 -0
  170. package/.agent/skills/huggingface-lora-space-builder/SKILL.md +11 -0
  171. package/.agent/skills/huggingface-paper-publisher/SKILL.md +11 -0
  172. package/.agent/skills/huggingface-papers/SKILL.md +11 -0
  173. package/.agent/skills/huggingface-spaces/SKILL.md +10 -0
  174. package/.agent/skills/huggingface-tool-builder/SKILL.md +11 -0
  175. package/.agent/skills/huggingface-trackio/SKILL.md +11 -0
  176. package/.agent/skills/huggingface-vision-trainer/SKILL.md +11 -0
  177. package/.agent/skills/huggingface-zerogpu/SKILL.md +11 -0
  178. package/.agent/skills/human-gate-negotiation/SKILL.md +11 -0
  179. package/.agent/skills/i18n-localization/SKILL.md +9 -0
  180. package/.agent/skills/impeccable/SKILL.md +8 -0
  181. package/.agent/skills/improve-codebase-architecture/SKILL.md +10 -0
  182. package/.agent/skills/improve-ui/SKILL.md +8 -0
  183. package/.agent/skills/intelligent-routing/SKILL.md +9 -0
  184. package/.agent/skills/knowledge-graph/SKILL.md +9 -0
  185. package/.agent/skills/landing-page/SKILL.md +9 -0
  186. package/.agent/skills/lint-and-validate/SKILL.md +9 -0
  187. package/.agent/skills/llm-engineering/SKILL.md +9 -0
  188. package/.agent/skills/local-first/SKILL.md +10 -0
  189. package/.agent/skills/lottie-animation/SKILL.md +9 -0
  190. package/.agent/skills/marquee-loop/SKILL.md +9 -0
  191. package/.agent/skills/masked-reveal/SKILL.md +9 -0
  192. package/.agent/skills/mcp-builder/SKILL.md +9 -0
  193. package/.agent/skills/micro-interaction/SKILL.md +9 -0
  194. package/.agent/skills/mobile-design/SKILL.md +7 -0
  195. package/.agent/skills/monorepo-management/SKILL.md +9 -0
  196. package/.agent/skills/morphing-icons/SKILL.md +9 -0
  197. package/.agent/skills/motion-engineering/SKILL.md +8 -0
  198. package/.agent/skills/nextjs-react-expert/SKILL.md +10 -0
  199. package/.agent/skills/nodejs-best-practices/SKILL.md +16 -0
  200. package/.agent/skills/observability/SKILL.md +8 -0
  201. package/.agent/skills/opentelemetry-observability/SKILL.md +9 -0
  202. package/.agent/skills/page-transition-animation/SKILL.md +10 -0
  203. package/.agent/skills/parallel-agents/SKILL.md +15 -0
  204. package/.agent/skills/performance-profiling/SKILL.md +9 -0
  205. package/.agent/skills/plan-writing/SKILL.md +8 -0
  206. package/.agent/skills/platform-engineer/SKILL.md +9 -0
  207. package/.agent/skills/platform-engineering-opentofu/SKILL.md +10 -0
  208. package/.agent/skills/playwright-ai-e2e/SKILL.md +9 -0
  209. package/.agent/skills/playwright-best-practices/SKILL.md +16 -0
  210. package/.agent/skills/polish/SKILL.md +8 -0
  211. package/.agent/skills/powershell-windows/SKILL.md +9 -0
  212. package/.agent/skills/pricing-page/SKILL.md +9 -0
  213. package/.agent/skills/product-aware-heuristics/SKILL.md +10 -0
  214. package/.agent/skills/progressive-blur/SKILL.md +9 -0
  215. package/.agent/skills/project-idioms/SKILL.md +8 -0
  216. package/.agent/skills/property-based-testing/SKILL.md +9 -0
  217. package/.agent/skills/python-patterns/SKILL.md +9 -0
  218. package/.agent/skills/python-pro/SKILL.md +9 -0
  219. package/.agent/skills/quieter/SKILL.md +8 -0
  220. package/.agent/skills/react-doctor/SKILL.md +9 -0
  221. package/.agent/skills/react-specialist/SKILL.md +9 -0
  222. package/.agent/skills/readme-builder/SKILL.md +9 -0
  223. package/.agent/skills/realtime-patterns/SKILL.md +9 -0
  224. package/.agent/skills/red-team-tactics/SKILL.md +16 -0
  225. package/.agent/skills/redesign-skill/SKILL.md +9 -0
  226. package/.agent/skills/review-animations/SKILL.md +8 -0
  227. package/.agent/skills/rust-pro/SKILL.md +9 -0
  228. package/.agent/skills/semantic-filesystem-navigation/SKILL.md +11 -0
  229. package/.agent/skills/seo-fundamentals/SKILL.md +9 -0
  230. package/.agent/skills/server-management/SKILL.md +8 -0
  231. package/.agent/skills/session-log-interrogation/SKILL.md +11 -0
  232. package/.agent/skills/shadcn-ui-expert/SKILL.md +9 -0
  233. package/.agent/skills/shape/SKILL.md +8 -0
  234. package/.agent/skills/skill-creator/SKILL.md +9 -0
  235. package/.agent/skills/soft-skill/SKILL.md +9 -0
  236. package/.agent/skills/sounds-on-the-web/SKILL.md +9 -0
  237. package/.agent/skills/sql-pro/SKILL.md +9 -0
  238. package/.agent/skills/subagent-driven-development/SKILL.md +11 -0
  239. package/.agent/skills/supabase-postgres-best-practices/SKILL.md +17 -0
  240. package/.agent/skills/svg-animation/SKILL.md +9 -0
  241. package/.agent/skills/swiftui-expert/SKILL.md +9 -0
  242. package/.agent/skills/swiss-design/SKILL.md +8 -0
  243. package/.agent/skills/system-design-pro/SKILL.md +9 -0
  244. package/.agent/skills/systematic-debugging/SKILL.md +14 -0
  245. package/.agent/skills/tailwind-patterns/SKILL.md +9 -0
  246. package/.agent/skills/taste-skill/SKILL.md +9 -0
  247. package/.agent/skills/tdd-workflow/SKILL.md +9 -0
  248. package/.agent/skills/test-result-analyzer/SKILL.md +9 -0
  249. package/.agent/skills/testing-patterns/SKILL.md +8 -0
  250. package/.agent/skills/thermo-nuclear-code-quality-review/SKILL.md +11 -0
  251. package/.agent/skills/thinking-protocol/SKILL.md +10 -0
  252. package/.agent/skills/to-spring-or-not-to-spring/SKILL.md +9 -0
  253. package/.agent/skills/train-sentence-transformers/SKILL.md +10 -0
  254. package/.agent/skills/transformers-js/SKILL.md +8 -0
  255. package/.agent/skills/transitions-dev/SKILL.md +8 -0
  256. package/.agent/skills/trend-researcher/SKILL.md +9 -0
  257. package/.agent/skills/tribunal-instincts-memory/SKILL.md +11 -0
  258. package/.agent/skills/trl-training/SKILL.md +9 -0
  259. package/.agent/skills/typescript-advanced/SKILL.md +9 -0
  260. package/.agent/skills/typeset/SKILL.md +8 -0
  261. package/.agent/skills/ui-reasoning-engine/SKILL.md +9 -0
  262. package/.agent/skills/ui-skill-packs/SKILL.md +9 -0
  263. package/.agent/skills/ui-skills-root/SKILL.md +9 -0
  264. package/.agent/skills/ui-ux-pro-max/SKILL.md +9 -0
  265. package/.agent/skills/ui-ux-researcher/SKILL.md +8 -0
  266. package/.agent/skills/vector-search-pgvector/SKILL.md +10 -0
  267. package/.agent/skills/verification-before-completion/SKILL.md +9 -0
  268. package/.agent/skills/vue-expert/SKILL.md +9 -0
  269. package/.agent/skills/vulnerability-scanner/SKILL.md +9 -0
  270. package/.agent/skills/web-accessibility-auditor/SKILL.md +16 -0
  271. package/.agent/skills/web-design-guidelines/SKILL.md +9 -0
  272. package/.agent/skills/web-quality-audit/SKILL.md +10 -0
  273. package/.agent/skills/webapp-testing/SKILL.md +8 -0
  274. package/.agent/skills/webgpu-performance/SKILL.md +9 -0
  275. package/.agent/skills/whimsy-injector/SKILL.md +9 -0
  276. package/.agent/skills/workflow-optimizer/SKILL.md +9 -0
  277. package/.agent/skills/zero-trust-passkeys/SKILL.md +10 -0
  278. package/.agent/skills_inventory.json +4257 -4272
  279. package/.agents/skills/12-principles-of-animation/SKILL.md +9 -0
  280. package/.agents/skills/60fps-animation/SKILL.md +14 -0
  281. package/.agents/skills/accessible-animation/SKILL.md +9 -0
  282. package/.agents/skills/adapt/SKILL.md +8 -0
  283. package/.agents/skills/adr-generation/SKILL.md +9 -0
  284. package/.agents/skills/advanced-rag-pipelines/SKILL.md +9 -0
  285. package/.agents/skills/agent-organizer/SKILL.md +8 -0
  286. package/.agents/skills/agent-syscall-guidelines/SKILL.md +10 -0
  287. package/.agents/skills/agentic-patterns/SKILL.md +9 -0
  288. package/.agents/skills/agentic-workflows-2026/SKILL.md +8 -0
  289. package/.agents/skills/agentshield-security/SKILL.md +16 -0
  290. package/.agents/skills/ai-app-hardening/SKILL.md +7 -0
  291. package/.agents/skills/ai-prompt-injection-defense/SKILL.md +9 -0
  292. package/.agents/skills/animation-on-scroll/SKILL.md +9 -0
  293. package/.agents/skills/animation-systems/SKILL.md +8 -0
  294. package/.agents/skills/antfu-conventions/SKILL.md +9 -0
  295. package/.agents/skills/anti-slop-enforcement/SKILL.md +11 -0
  296. package/.agents/skills/api-patterns/SKILL.md +9 -0
  297. package/.agents/skills/api-security-auditor/SKILL.md +10 -0
  298. package/.agents/skills/app-builder/SKILL.md +8 -0
  299. package/.agents/skills/appflow-wireframe/SKILL.md +9 -0
  300. package/.agents/skills/apple-design/SKILL.md +8 -0
  301. package/.agents/skills/architecture/SKILL.md +8 -0
  302. package/.agents/skills/architecture-drift/SKILL.md +9 -0
  303. package/.agents/skills/architecture-intelligence/SKILL.md +17 -0
  304. package/.agents/skills/audit-and-fix/SKILL.md +8 -0
  305. package/.agents/skills/authentication-best-practices/SKILL.md +10 -0
  306. package/.agents/skills/autonomous-execution/SKILL.md +9 -0
  307. package/.agents/skills/backend-alembic/SKILL.md +16 -0
  308. package/.agents/skills/backend-architecture-auditor/SKILL.md +16 -0
  309. package/.agents/skills/backend-mongodb/SKILL.md +10 -0
  310. package/.agents/skills/backend-mysql/SKILL.md +16 -0
  311. package/.agents/skills/backend-performance-auditor/SKILL.md +10 -0
  312. package/.agents/skills/backend-postgresql/SKILL.md +10 -0
  313. package/.agents/skills/backend-redis/SKILL.md +10 -0
  314. package/.agents/skills/backend-security-expert/SKILL.md +10 -0
  315. package/.agents/skills/backend-sqlalchemy/SKILL.md +10 -0
  316. package/.agents/skills/backend-sqlite/SKILL.md +10 -0
  317. package/.agents/skills/backend-testing-auditor/SKILL.md +15 -0
  318. package/.agents/skills/baseline-ui/SKILL.md +8 -0
  319. package/.agents/skills/bash-linux/SKILL.md +9 -0
  320. package/.agents/skills/behavioral-modes/SKILL.md +9 -0
  321. package/.agents/skills/better-colors/SKILL.md +9 -0
  322. package/.agents/skills/better-typography/SKILL.md +9 -0
  323. package/.agents/skills/better-ui/SKILL.md +8 -0
  324. package/.agents/skills/bolder/SKILL.md +8 -0
  325. package/.agents/skills/brainstorming/SKILL.md +8 -0
  326. package/.agents/skills/browser-audit/SKILL.md +9 -0
  327. package/.agents/skills/browser-native-ai/SKILL.md +8 -0
  328. package/.agents/skills/build-primitive/SKILL.md +8 -0
  329. package/.agents/skills/building-native-ui/SKILL.md +7 -0
  330. package/.agents/skills/cicd-pro/SKILL.md +9 -0
  331. package/.agents/skills/clarify/SKILL.md +8 -0
  332. package/.agents/skills/clean-code/SKILL.md +8 -0
  333. package/.agents/skills/cloud-architect/SKILL.md +8 -0
  334. package/.agents/skills/cobejs/SKILL.md +8 -0
  335. package/.agents/skills/code-review-checklist/SKILL.md +9 -0
  336. package/.agents/skills/codebase-design/SKILL.md +14 -0
  337. package/.agents/skills/colorize/SKILL.md +8 -0
  338. package/.agents/skills/compact-landing/SKILL.md +9 -0
  339. package/.agents/skills/company-logos/SKILL.md +9 -0
  340. package/.agents/skills/config-validator/SKILL.md +9 -0
  341. package/.agents/skills/containerization-pro/SKILL.md +9 -0
  342. package/.agents/skills/context-engineering-pro/SKILL.md +10 -0
  343. package/.agents/skills/create-design-md/SKILL.md +7 -0
  344. package/.agents/skills/critique/SKILL.md +8 -0
  345. package/.agents/skills/csharp-developer/SKILL.md +9 -0
  346. package/.agents/skills/data-validation-schemas/SKILL.md +8 -0
  347. package/.agents/skills/database-design/SKILL.md +8 -0
  348. package/.agents/skills/delight/SKILL.md +8 -0
  349. package/.agents/skills/deployment-procedures/SKILL.md +9 -0
  350. package/.agents/skills/design-lab/SKILL.md +8 -0
  351. package/.agents/skills/devops-engineer/SKILL.md +9 -0
  352. package/.agents/skills/devops-incident-responder/SKILL.md +16 -0
  353. package/.agents/skills/diagnosing-bugs/SKILL.md +9 -0
  354. package/.agents/skills/distill/SKILL.md +8 -0
  355. package/.agents/skills/documentation-templates/SKILL.md +9 -0
  356. package/.agents/skills/domain-modeling/SKILL.md +9 -0
  357. package/.agents/skills/duckdb-analytical-sql/SKILL.md +10 -0
  358. package/.agents/skills/edge-ai-mobile/SKILL.md +8 -0
  359. package/.agents/skills/edge-computing/SKILL.md +9 -0
  360. package/.agents/skills/emil-design-eng/SKILL.md +9 -0
  361. package/.agents/skills/error-resilience/SKILL.md +8 -0
  362. package/.agents/skills/expo-router-v4/SKILL.md +9 -0
  363. package/.agents/skills/extract-design-system/SKILL.md +9 -0
  364. package/.agents/skills/fabel-protocol/SKILL.md +9 -0
  365. package/.agents/skills/failure-mode-analysis/SKILL.md +10 -0
  366. package/.agents/skills/fastapi-pro/SKILL.md +9 -0
  367. package/.agents/skills/fixing-accessibility/SKILL.md +9 -0
  368. package/.agents/skills/fixing-metadata/SKILL.md +9 -0
  369. package/.agents/skills/fixing-motion-performance/SKILL.md +9 -0
  370. package/.agents/skills/framer-motion-expert/SKILL.md +9 -0
  371. package/.agents/skills/frontend-design/SKILL.md +7 -0
  372. package/.agents/skills/frontend-security-expert/SKILL.md +9 -0
  373. package/.agents/skills/game-design-expert/SKILL.md +9 -0
  374. package/.agents/skills/game-engineering-expert/SKILL.md +16 -0
  375. package/.agents/skills/generative-ui-expert/SKILL.md +9 -0
  376. package/.agents/skills/geo-fundamentals/SKILL.md +9 -0
  377. package/.agents/skills/git-pro/SKILL.md +9 -0
  378. package/.agents/skills/github-operations/SKILL.md +9 -0
  379. package/.agents/skills/gpt-taste/SKILL.md +9 -0
  380. package/.agents/skills/graph-engineering/SKILL.md +16 -0
  381. package/.agents/skills/gsap-core/SKILL.md +9 -0
  382. package/.agents/skills/gsap-frameworks/SKILL.md +9 -0
  383. package/.agents/skills/gsap-performance/SKILL.md +9 -0
  384. package/.agents/skills/gsap-plugins/SKILL.md +9 -0
  385. package/.agents/skills/gsap-react/SKILL.md +9 -0
  386. package/.agents/skills/gsap-scrolltrigger/SKILL.md +9 -0
  387. package/.agents/skills/gsap-timeline/SKILL.md +9 -0
  388. package/.agents/skills/gsap-utils/SKILL.md +9 -0
  389. package/.agents/skills/harden/SKILL.md +8 -0
  390. package/.agents/skills/harness-protocol/SKILL.md +9 -0
  391. package/.agents/skills/hf-cli/SKILL.md +11 -0
  392. package/.agents/skills/hf-cloud-aws-context-discovery/SKILL.md +10 -0
  393. package/.agents/skills/hf-cloud-python-env-setup/SKILL.md +10 -0
  394. package/.agents/skills/hf-cloud-sagemaker-deployment-planner/SKILL.md +10 -0
  395. package/.agents/skills/hf-cloud-sagemaker-iam-preflight/SKILL.md +10 -0
  396. package/.agents/skills/hf-cloud-sagemaker-production-defaults/SKILL.md +10 -0
  397. package/.agents/skills/hf-cloud-serving-image-selection/SKILL.md +10 -0
  398. package/.agents/skills/hf-mem/SKILL.md +11 -0
  399. package/.agents/skills/huggingface-best/SKILL.md +9 -0
  400. package/.agents/skills/huggingface-community-evals/SKILL.md +11 -0
  401. package/.agents/skills/huggingface-datasets/SKILL.md +10 -0
  402. package/.agents/skills/huggingface-gradio/SKILL.md +10 -0
  403. package/.agents/skills/huggingface-llm-trainer/SKILL.md +10 -0
  404. package/.agents/skills/huggingface-local-models/SKILL.md +10 -0
  405. package/.agents/skills/huggingface-lora-space-builder/SKILL.md +11 -0
  406. package/.agents/skills/huggingface-paper-publisher/SKILL.md +11 -0
  407. package/.agents/skills/huggingface-papers/SKILL.md +11 -0
  408. package/.agents/skills/huggingface-spaces/SKILL.md +10 -0
  409. package/.agents/skills/huggingface-tool-builder/SKILL.md +11 -0
  410. package/.agents/skills/huggingface-trackio/SKILL.md +11 -0
  411. package/.agents/skills/huggingface-vision-trainer/SKILL.md +11 -0
  412. package/.agents/skills/huggingface-zerogpu/SKILL.md +11 -0
  413. package/.agents/skills/human-gate-negotiation/SKILL.md +11 -0
  414. package/.agents/skills/i18n-localization/SKILL.md +9 -0
  415. package/.agents/skills/impeccable/SKILL.md +8 -0
  416. package/.agents/skills/improve-codebase-architecture/SKILL.md +10 -0
  417. package/.agents/skills/improve-ui/SKILL.md +8 -0
  418. package/.agents/skills/intelligent-routing/SKILL.md +9 -0
  419. package/.agents/skills/knowledge-graph/SKILL.md +9 -0
  420. package/.agents/skills/landing-page/SKILL.md +9 -0
  421. package/.agents/skills/lint-and-validate/SKILL.md +9 -0
  422. package/.agents/skills/llm-engineering/SKILL.md +9 -0
  423. package/.agents/skills/local-first/SKILL.md +10 -0
  424. package/.agents/skills/lottie-animation/SKILL.md +9 -0
  425. package/.agents/skills/marquee-loop/SKILL.md +9 -0
  426. package/.agents/skills/masked-reveal/SKILL.md +9 -0
  427. package/.agents/skills/mcp-builder/SKILL.md +9 -0
  428. package/.agents/skills/micro-interaction/SKILL.md +9 -0
  429. package/.agents/skills/mobile-design/SKILL.md +7 -0
  430. package/.agents/skills/monorepo-management/SKILL.md +9 -0
  431. package/.agents/skills/morphing-icons/SKILL.md +9 -0
  432. package/.agents/skills/motion-engineering/SKILL.md +8 -0
  433. package/.agents/skills/nextjs-react-expert/SKILL.md +10 -0
  434. package/.agents/skills/nodejs-best-practices/SKILL.md +16 -0
  435. package/.agents/skills/observability/SKILL.md +8 -0
  436. package/.agents/skills/opentelemetry-observability/SKILL.md +9 -0
  437. package/.agents/skills/page-transition-animation/SKILL.md +10 -0
  438. package/.agents/skills/parallel-agents/SKILL.md +15 -0
  439. package/.agents/skills/performance-profiling/SKILL.md +9 -0
  440. package/.agents/skills/plan-writing/SKILL.md +8 -0
  441. package/.agents/skills/platform-engineer/SKILL.md +9 -0
  442. package/.agents/skills/platform-engineering-opentofu/SKILL.md +10 -0
  443. package/.agents/skills/playwright-ai-e2e/SKILL.md +9 -0
  444. package/.agents/skills/playwright-best-practices/SKILL.md +16 -0
  445. package/.agents/skills/polish/SKILL.md +8 -0
  446. package/.agents/skills/powershell-windows/SKILL.md +9 -0
  447. package/.agents/skills/pricing-page/SKILL.md +9 -0
  448. package/.agents/skills/product-aware-heuristics/SKILL.md +10 -0
  449. package/.agents/skills/progressive-blur/SKILL.md +9 -0
  450. package/.agents/skills/project-idioms/SKILL.md +8 -0
  451. package/.agents/skills/property-based-testing/SKILL.md +9 -0
  452. package/.agents/skills/python-patterns/SKILL.md +9 -0
  453. package/.agents/skills/python-pro/SKILL.md +9 -0
  454. package/.agents/skills/quieter/SKILL.md +8 -0
  455. package/.agents/skills/react-doctor/SKILL.md +9 -0
  456. package/.agents/skills/react-specialist/SKILL.md +9 -0
  457. package/.agents/skills/readme-builder/SKILL.md +9 -0
  458. package/.agents/skills/realtime-patterns/SKILL.md +9 -0
  459. package/.agents/skills/red-team-tactics/SKILL.md +16 -0
  460. package/.agents/skills/redesign-skill/SKILL.md +9 -0
  461. package/.agents/skills/review-animations/SKILL.md +8 -0
  462. package/.agents/skills/rust-pro/SKILL.md +9 -0
  463. package/.agents/skills/semantic-filesystem-navigation/SKILL.md +11 -0
  464. package/.agents/skills/seo-fundamentals/SKILL.md +9 -0
  465. package/.agents/skills/server-management/SKILL.md +8 -0
  466. package/.agents/skills/session-log-interrogation/SKILL.md +11 -0
  467. package/.agents/skills/shadcn-ui-expert/SKILL.md +9 -0
  468. package/.agents/skills/shape/SKILL.md +8 -0
  469. package/.agents/skills/skill-creator/SKILL.md +9 -0
  470. package/.agents/skills/soft-skill/SKILL.md +9 -0
  471. package/.agents/skills/sounds-on-the-web/SKILL.md +9 -0
  472. package/.agents/skills/sql-pro/SKILL.md +9 -0
  473. package/.agents/skills/subagent-driven-development/SKILL.md +11 -0
  474. package/.agents/skills/supabase-postgres-best-practices/SKILL.md +17 -0
  475. package/.agents/skills/svg-animation/SKILL.md +9 -0
  476. package/.agents/skills/swiftui-expert/SKILL.md +9 -0
  477. package/.agents/skills/swiss-design/SKILL.md +8 -0
  478. package/.agents/skills/system-design-pro/SKILL.md +9 -0
  479. package/.agents/skills/systematic-debugging/SKILL.md +14 -0
  480. package/.agents/skills/tailwind-patterns/SKILL.md +9 -0
  481. package/.agents/skills/taste-skill/SKILL.md +9 -0
  482. package/.agents/skills/tdd-workflow/SKILL.md +9 -0
  483. package/.agents/skills/test-result-analyzer/SKILL.md +9 -0
  484. package/.agents/skills/testing-patterns/SKILL.md +8 -0
  485. package/.agents/skills/thermo-nuclear-code-quality-review/SKILL.md +11 -0
  486. package/.agents/skills/thinking-protocol/SKILL.md +10 -0
  487. package/.agents/skills/to-spring-or-not-to-spring/SKILL.md +9 -0
  488. package/.agents/skills/train-sentence-transformers/SKILL.md +10 -0
  489. package/.agents/skills/transformers-js/SKILL.md +8 -0
  490. package/.agents/skills/transitions-dev/SKILL.md +8 -0
  491. package/.agents/skills/trend-researcher/SKILL.md +9 -0
  492. package/.agents/skills/tribunal-instincts-memory/SKILL.md +11 -0
  493. package/.agents/skills/trl-training/SKILL.md +9 -0
  494. package/.agents/skills/typescript-advanced/SKILL.md +9 -0
  495. package/.agents/skills/typeset/SKILL.md +8 -0
  496. package/.agents/skills/ui-reasoning-engine/SKILL.md +9 -0
  497. package/.agents/skills/ui-skill-packs/SKILL.md +9 -0
  498. package/.agents/skills/ui-skills-root/SKILL.md +9 -0
  499. package/.agents/skills/ui-ux-pro-max/SKILL.md +9 -0
  500. package/.agents/skills/ui-ux-researcher/SKILL.md +8 -0
  501. package/.agents/skills/vector-search-pgvector/SKILL.md +10 -0
  502. package/.agents/skills/verification-before-completion/SKILL.md +9 -0
  503. package/.agents/skills/vue-expert/SKILL.md +9 -0
  504. package/.agents/skills/vulnerability-scanner/SKILL.md +9 -0
  505. package/.agents/skills/web-accessibility-auditor/SKILL.md +16 -0
  506. package/.agents/skills/web-design-guidelines/SKILL.md +9 -0
  507. package/.agents/skills/web-quality-audit/SKILL.md +10 -0
  508. package/.agents/skills/webapp-testing/SKILL.md +8 -0
  509. package/.agents/skills/webgpu-performance/SKILL.md +9 -0
  510. package/.agents/skills/whimsy-injector/SKILL.md +9 -0
  511. package/.agents/skills/workflow-optimizer/SKILL.md +9 -0
  512. package/.agents/skills/zero-trust-passkeys/SKILL.md +10 -0
  513. package/README.md +4 -4
  514. package/bin/adapter-install.js +1 -1
  515. package/bin/mcp-server.js +249 -0
  516. package/package.json +12 -8
  517. package/plugins/core-plugin.json +1 -1
  518. package/plugins/gemini/extension.json +1 -1
  519. package/skills/12-principles-of-animation/SKILL.md +9 -0
  520. package/skills/60fps-animation/SKILL.md +14 -0
  521. package/skills/accessible-animation/SKILL.md +9 -0
  522. package/skills/adapt/SKILL.md +8 -0
  523. package/skills/adr-generation/SKILL.md +9 -0
  524. package/skills/advanced-rag-pipelines/SKILL.md +9 -0
  525. package/skills/agent-organizer/SKILL.md +8 -0
  526. package/skills/agent-syscall-guidelines/SKILL.md +10 -0
  527. package/skills/agentic-patterns/SKILL.md +9 -0
  528. package/skills/agentic-workflows-2026/SKILL.md +8 -0
  529. package/skills/agentshield-security/SKILL.md +16 -0
  530. package/skills/ai-app-hardening/SKILL.md +7 -0
  531. package/skills/ai-prompt-injection-defense/SKILL.md +9 -0
  532. package/skills/animation-on-scroll/SKILL.md +9 -0
  533. package/skills/animation-systems/SKILL.md +8 -0
  534. package/skills/antfu-conventions/SKILL.md +9 -0
  535. package/skills/anti-slop-enforcement/SKILL.md +11 -0
  536. package/skills/api-patterns/SKILL.md +9 -0
  537. package/skills/api-security-auditor/SKILL.md +10 -0
  538. package/skills/app-builder/SKILL.md +8 -0
  539. package/skills/appflow-wireframe/SKILL.md +9 -0
  540. package/skills/apple-design/SKILL.md +8 -0
  541. package/skills/architecture/SKILL.md +8 -0
  542. package/skills/architecture-drift/SKILL.md +9 -0
  543. package/skills/architecture-intelligence/SKILL.md +17 -0
  544. package/skills/audit-and-fix/SKILL.md +8 -0
  545. package/skills/authentication-best-practices/SKILL.md +10 -0
  546. package/skills/autonomous-execution/SKILL.md +9 -0
  547. package/skills/backend-alembic/SKILL.md +16 -0
  548. package/skills/backend-architecture-auditor/SKILL.md +16 -0
  549. package/skills/backend-mongodb/SKILL.md +10 -0
  550. package/skills/backend-mysql/SKILL.md +16 -0
  551. package/skills/backend-performance-auditor/SKILL.md +10 -0
  552. package/skills/backend-postgresql/SKILL.md +10 -0
  553. package/skills/backend-redis/SKILL.md +10 -0
  554. package/skills/backend-security-expert/SKILL.md +10 -0
  555. package/skills/backend-sqlalchemy/SKILL.md +10 -0
  556. package/skills/backend-sqlite/SKILL.md +10 -0
  557. package/skills/backend-testing-auditor/SKILL.md +15 -0
  558. package/skills/baseline-ui/SKILL.md +8 -0
  559. package/skills/bash-linux/SKILL.md +9 -0
  560. package/skills/behavioral-modes/SKILL.md +9 -0
  561. package/skills/better-colors/SKILL.md +9 -0
  562. package/skills/better-typography/SKILL.md +9 -0
  563. package/skills/better-ui/SKILL.md +8 -0
  564. package/skills/bolder/SKILL.md +8 -0
  565. package/skills/brainstorming/SKILL.md +8 -0
  566. package/skills/browser-audit/SKILL.md +9 -0
  567. package/skills/browser-native-ai/SKILL.md +8 -0
  568. package/skills/build-primitive/SKILL.md +8 -0
  569. package/skills/building-native-ui/SKILL.md +7 -0
  570. package/skills/cicd-pro/SKILL.md +9 -0
  571. package/skills/clarify/SKILL.md +8 -0
  572. package/skills/clean-code/SKILL.md +8 -0
  573. package/skills/cloud-architect/SKILL.md +8 -0
  574. package/skills/cobejs/SKILL.md +8 -0
  575. package/skills/code-review-checklist/SKILL.md +9 -0
  576. package/skills/codebase-design/SKILL.md +14 -0
  577. package/skills/colorize/SKILL.md +8 -0
  578. package/skills/compact-landing/SKILL.md +9 -0
  579. package/skills/company-logos/SKILL.md +9 -0
  580. package/skills/config-validator/SKILL.md +9 -0
  581. package/skills/containerization-pro/SKILL.md +9 -0
  582. package/skills/context-engineering-pro/SKILL.md +10 -0
  583. package/skills/create-design-md/SKILL.md +7 -0
  584. package/skills/critique/SKILL.md +8 -0
  585. package/skills/csharp-developer/SKILL.md +9 -0
  586. package/skills/data-validation-schemas/SKILL.md +8 -0
  587. package/skills/database-design/SKILL.md +8 -0
  588. package/skills/delight/SKILL.md +8 -0
  589. package/skills/deployment-procedures/SKILL.md +9 -0
  590. package/skills/design-lab/SKILL.md +8 -0
  591. package/skills/devops-engineer/SKILL.md +9 -0
  592. package/skills/devops-incident-responder/SKILL.md +16 -0
  593. package/skills/diagnosing-bugs/SKILL.md +9 -0
  594. package/skills/distill/SKILL.md +8 -0
  595. package/skills/documentation-templates/SKILL.md +9 -0
  596. package/skills/domain-modeling/SKILL.md +9 -0
  597. package/skills/duckdb-analytical-sql/SKILL.md +10 -0
  598. package/skills/edge-ai-mobile/SKILL.md +8 -0
  599. package/skills/edge-computing/SKILL.md +9 -0
  600. package/skills/emil-design-eng/SKILL.md +9 -0
  601. package/skills/error-resilience/SKILL.md +8 -0
  602. package/skills/expo-router-v4/SKILL.md +9 -0
  603. package/skills/extract-design-system/SKILL.md +9 -0
  604. package/skills/fabel-protocol/SKILL.md +9 -0
  605. package/skills/failure-mode-analysis/SKILL.md +10 -0
  606. package/skills/fastapi-pro/SKILL.md +9 -0
  607. package/skills/fixing-accessibility/SKILL.md +9 -0
  608. package/skills/fixing-metadata/SKILL.md +9 -0
  609. package/skills/fixing-motion-performance/SKILL.md +9 -0
  610. package/skills/framer-motion-expert/SKILL.md +9 -0
  611. package/skills/frontend-design/SKILL.md +7 -0
  612. package/skills/frontend-security-expert/SKILL.md +9 -0
  613. package/skills/game-design-expert/SKILL.md +9 -0
  614. package/skills/game-engineering-expert/SKILL.md +16 -0
  615. package/skills/generative-ui-expert/SKILL.md +9 -0
  616. package/skills/geo-fundamentals/SKILL.md +9 -0
  617. package/skills/git-pro/SKILL.md +9 -0
  618. package/skills/github-operations/SKILL.md +9 -0
  619. package/skills/gpt-taste/SKILL.md +9 -0
  620. package/skills/graph-engineering/SKILL.md +16 -0
  621. package/skills/gsap-core/SKILL.md +9 -0
  622. package/skills/gsap-frameworks/SKILL.md +9 -0
  623. package/skills/gsap-performance/SKILL.md +9 -0
  624. package/skills/gsap-plugins/SKILL.md +9 -0
  625. package/skills/gsap-react/SKILL.md +9 -0
  626. package/skills/gsap-scrolltrigger/SKILL.md +9 -0
  627. package/skills/gsap-timeline/SKILL.md +9 -0
  628. package/skills/gsap-utils/SKILL.md +9 -0
  629. package/skills/harden/SKILL.md +8 -0
  630. package/skills/harness-protocol/SKILL.md +9 -0
  631. package/skills/hf-cli/SKILL.md +11 -0
  632. package/skills/hf-cloud-aws-context-discovery/SKILL.md +10 -0
  633. package/skills/hf-cloud-python-env-setup/SKILL.md +10 -0
  634. package/skills/hf-cloud-sagemaker-deployment-planner/SKILL.md +10 -0
  635. package/skills/hf-cloud-sagemaker-iam-preflight/SKILL.md +10 -0
  636. package/skills/hf-cloud-sagemaker-production-defaults/SKILL.md +10 -0
  637. package/skills/hf-cloud-serving-image-selection/SKILL.md +10 -0
  638. package/skills/hf-mem/SKILL.md +11 -0
  639. package/skills/huggingface-best/SKILL.md +9 -0
  640. package/skills/huggingface-community-evals/SKILL.md +11 -0
  641. package/skills/huggingface-datasets/SKILL.md +10 -0
  642. package/skills/huggingface-gradio/SKILL.md +10 -0
  643. package/skills/huggingface-llm-trainer/SKILL.md +10 -0
  644. package/skills/huggingface-local-models/SKILL.md +10 -0
  645. package/skills/huggingface-lora-space-builder/SKILL.md +11 -0
  646. package/skills/huggingface-paper-publisher/SKILL.md +11 -0
  647. package/skills/huggingface-papers/SKILL.md +11 -0
  648. package/skills/huggingface-spaces/SKILL.md +10 -0
  649. package/skills/huggingface-tool-builder/SKILL.md +11 -0
  650. package/skills/huggingface-trackio/SKILL.md +11 -0
  651. package/skills/huggingface-vision-trainer/SKILL.md +11 -0
  652. package/skills/huggingface-zerogpu/SKILL.md +11 -0
  653. package/skills/human-gate-negotiation/SKILL.md +11 -0
  654. package/skills/i18n-localization/SKILL.md +9 -0
  655. package/skills/impeccable/SKILL.md +8 -0
  656. package/skills/improve-codebase-architecture/SKILL.md +10 -0
  657. package/skills/improve-ui/SKILL.md +8 -0
  658. package/skills/intelligent-routing/SKILL.md +9 -0
  659. package/skills/knowledge-graph/SKILL.md +9 -0
  660. package/skills/landing-page/SKILL.md +9 -0
  661. package/skills/lint-and-validate/SKILL.md +9 -0
  662. package/skills/llm-engineering/SKILL.md +9 -0
  663. package/skills/local-first/SKILL.md +10 -0
  664. package/skills/lottie-animation/SKILL.md +9 -0
  665. package/skills/marquee-loop/SKILL.md +9 -0
  666. package/skills/masked-reveal/SKILL.md +9 -0
  667. package/skills/mcp-builder/SKILL.md +9 -0
  668. package/skills/micro-interaction/SKILL.md +9 -0
  669. package/skills/mobile-design/SKILL.md +7 -0
  670. package/skills/monorepo-management/SKILL.md +9 -0
  671. package/skills/morphing-icons/SKILL.md +9 -0
  672. package/skills/motion-engineering/SKILL.md +8 -0
  673. package/skills/nextjs-react-expert/SKILL.md +10 -0
  674. package/skills/nodejs-best-practices/SKILL.md +16 -0
  675. package/skills/observability/SKILL.md +8 -0
  676. package/skills/opentelemetry-observability/SKILL.md +9 -0
  677. package/skills/page-transition-animation/SKILL.md +10 -0
  678. package/skills/parallel-agents/SKILL.md +15 -0
  679. package/skills/performance-profiling/SKILL.md +9 -0
  680. package/skills/plan-writing/SKILL.md +8 -0
  681. package/skills/platform-engineer/SKILL.md +9 -0
  682. package/skills/platform-engineering-opentofu/SKILL.md +10 -0
  683. package/skills/playwright-ai-e2e/SKILL.md +9 -0
  684. package/skills/playwright-best-practices/SKILL.md +16 -0
  685. package/skills/polish/SKILL.md +8 -0
  686. package/skills/powershell-windows/SKILL.md +9 -0
  687. package/skills/pricing-page/SKILL.md +9 -0
  688. package/skills/product-aware-heuristics/SKILL.md +10 -0
  689. package/skills/progressive-blur/SKILL.md +9 -0
  690. package/skills/project-idioms/SKILL.md +8 -0
  691. package/skills/property-based-testing/SKILL.md +9 -0
  692. package/skills/python-patterns/SKILL.md +9 -0
  693. package/skills/python-pro/SKILL.md +9 -0
  694. package/skills/quieter/SKILL.md +8 -0
  695. package/skills/react-doctor/SKILL.md +9 -0
  696. package/skills/react-specialist/SKILL.md +9 -0
  697. package/skills/readme-builder/SKILL.md +9 -0
  698. package/skills/realtime-patterns/SKILL.md +9 -0
  699. package/skills/red-team-tactics/SKILL.md +16 -0
  700. package/skills/redesign-skill/SKILL.md +9 -0
  701. package/skills/review-animations/SKILL.md +8 -0
  702. package/skills/rust-pro/SKILL.md +9 -0
  703. package/skills/semantic-filesystem-navigation/SKILL.md +11 -0
  704. package/skills/seo-fundamentals/SKILL.md +9 -0
  705. package/skills/server-management/SKILL.md +8 -0
  706. package/skills/session-log-interrogation/SKILL.md +11 -0
  707. package/skills/shadcn-ui-expert/SKILL.md +9 -0
  708. package/skills/shape/SKILL.md +8 -0
  709. package/skills/skill-creator/SKILL.md +9 -0
  710. package/skills/soft-skill/SKILL.md +9 -0
  711. package/skills/sounds-on-the-web/SKILL.md +9 -0
  712. package/skills/sql-pro/SKILL.md +9 -0
  713. package/skills/subagent-driven-development/SKILL.md +11 -0
  714. package/skills/supabase-postgres-best-practices/SKILL.md +17 -0
  715. package/skills/svg-animation/SKILL.md +9 -0
  716. package/skills/swiftui-expert/SKILL.md +9 -0
  717. package/skills/swiss-design/SKILL.md +8 -0
  718. package/skills/system-design-pro/SKILL.md +9 -0
  719. package/skills/systematic-debugging/SKILL.md +14 -0
  720. package/skills/tailwind-patterns/SKILL.md +9 -0
  721. package/skills/taste-skill/SKILL.md +9 -0
  722. package/skills/tdd-workflow/SKILL.md +9 -0
  723. package/skills/test-result-analyzer/SKILL.md +9 -0
  724. package/skills/testing-patterns/SKILL.md +8 -0
  725. package/skills/thermo-nuclear-code-quality-review/SKILL.md +11 -0
  726. package/skills/thinking-protocol/SKILL.md +10 -0
  727. package/skills/to-spring-or-not-to-spring/SKILL.md +9 -0
  728. package/skills/train-sentence-transformers/SKILL.md +10 -0
  729. package/skills/transformers-js/SKILL.md +8 -0
  730. package/skills/transitions-dev/SKILL.md +8 -0
  731. package/skills/trend-researcher/SKILL.md +9 -0
  732. package/skills/tribunal-instincts-memory/SKILL.md +11 -0
  733. package/skills/trl-training/SKILL.md +9 -0
  734. package/skills/typescript-advanced/SKILL.md +9 -0
  735. package/skills/typeset/SKILL.md +8 -0
  736. package/skills/ui-reasoning-engine/SKILL.md +9 -0
  737. package/skills/ui-skill-packs/SKILL.md +9 -0
  738. package/skills/ui-skills-root/SKILL.md +9 -0
  739. package/skills/ui-ux-pro-max/SKILL.md +9 -0
  740. package/skills/ui-ux-researcher/SKILL.md +8 -0
  741. package/skills/vector-search-pgvector/SKILL.md +10 -0
  742. package/skills/verification-before-completion/SKILL.md +9 -0
  743. package/skills/vue-expert/SKILL.md +9 -0
  744. package/skills/vulnerability-scanner/SKILL.md +9 -0
  745. package/skills/web-accessibility-auditor/SKILL.md +16 -0
  746. package/skills/web-design-guidelines/SKILL.md +9 -0
  747. package/skills/web-quality-audit/SKILL.md +10 -0
  748. package/skills/webapp-testing/SKILL.md +8 -0
  749. package/skills/webgpu-performance/SKILL.md +9 -0
  750. package/skills/whimsy-injector/SKILL.md +9 -0
  751. package/skills/workflow-optimizer/SKILL.md +9 -0
  752. package/skills/zero-trust-passkeys/SKILL.md +10 -0
  753. package/src/cli.js +18 -0
  754. package/src/commands/init.js +538 -462
  755. package/src/commands/intelligence.js +86 -0
  756. package/src/commands/review.js +235 -1
  757. package/src/commands/system1.js +562 -413
  758. package/src/evaluation/evaluation_runner.js +207 -0
  759. package/src/evaluation/scenario_registry.js +82 -0
  760. package/src/execution/agent_correction_engine.js +76 -0
  761. package/src/execution/controlled_write_service.js +301 -0
  762. package/src/execution/correction_run_engine.js +234 -0
  763. package/src/execution/correction_verifier.js +85 -0
  764. package/src/execution/evidence_aggregator.js +54 -0
  765. package/src/execution/finding_diff_engine.js +59 -0
  766. package/src/execution/index.js +42 -0
  767. package/src/execution/prompt_isolator.js +145 -0
  768. package/src/execution/provider_adapter.js +495 -0
  769. package/src/execution/resolution_certificate.js +53 -0
  770. package/src/execution/resolution_policy.js +70 -0
  771. package/src/execution/review_executor.js +335 -0
  772. package/src/execution/reviewer_registry.js +137 -0
  773. package/src/execution/schemas.js +298 -0
  774. package/src/execution/transaction_manager.js +237 -0
  775. package/src/execution/validation_runner.js +174 -0
  776. package/src/execution/verdict_aggregator.js +181 -0
  777. package/src/execution/write_policy_engine.js +95 -0
  778. package/src/intelligence/adaptive_correction.js +72 -0
  779. package/src/intelligence/adaptive_reviewer_orchestrator.js +123 -0
  780. package/src/intelligence/case_indexer.js +166 -0
  781. package/src/intelligence/case_memory.js +149 -0
  782. package/src/intelligence/case_similarity.js +86 -0
  783. package/src/intelligence/cbr_engine.js +90 -0
  784. package/src/intelligence/evidence_optimization.js +106 -0
  785. package/src/intelligence/failure_intelligence.js +95 -0
  786. package/src/intelligence/governance_drift_detector.js +75 -0
  787. package/src/intelligence/governance_simulator.js +115 -0
  788. package/src/intelligence/human_intelligence.js +46 -0
  789. package/src/intelligence/mcp_tools.js +87 -0
  790. package/src/intelligence/reviewer_performance.js +94 -0
  791. package/src/intelligence/risk_prediction_engine.js +92 -0
  792. package/src/intelligence/token_intelligence.js +73 -0
  793. package/src/tui/banner.js +26 -47
  794. package/src/tui/index.js +4 -0
  795. package/src/tui/panel.js +55 -0
  796. package/src/tui/progress.js +42 -0
  797. package/src/tui/reviewer-grid.js +9 -10
  798. package/src/tui/theme.js +59 -16
  799. package/src/tui/tree.js +57 -29
  800. package/src/tui/wizard.js +22 -18
  801. package/.agent/skills/local-first-architecture/SKILL.md +0 -123
@@ -1,303 +1,303 @@
1
- #!/usr/bin/env node
2
- /**
3
- * architecture_verifier.js — Tribunal Zero-Trust Architecture Verifier
4
- * ═════════════════════════════════════════════════════════════════════════════
5
- * Evaluates architectural models against ground-truth source code bytes.
6
- *
7
- * Capabilities:
8
- * - Verifies all source citations (file exists, line valid, no path escapes)
9
- * - Detects Stale Evidence via SHA-256 drift verification
10
- * - Verifies AST Symbol and Relationship Call Sites
11
- * - Assigns Epistemic Confidence Levels (L1 to L5)
12
- * - Surfaces Architectural Contradictions as first-class disputable records
13
- * - Prevents unverified agent claims from masquerading as verified facts
14
- *
15
- * Emits: .agent/history/architecture-verification.json
16
- * Zero external dependencies.
17
- */
18
-
19
- 'use strict';
20
-
21
- const fs = require('fs');
22
- const path = require('path');
23
- const crypto = require('crypto');
24
- const { GREEN, YELLOW, CYAN, RED, DIM, RESET, BOX, banner, timer, formatMs } = require('./_colors');
25
-
26
- function computeSha256(str) {
27
- return crypto
28
- .createHash('sha256')
29
- .update(str || '')
30
- .digest('hex');
31
- }
32
-
33
- class ArchitectureVerifier {
34
- constructor(repoRoot = process.cwd(), options = {}) {
35
- this.repoRoot = path.resolve(repoRoot);
36
- this.options = { strict: false, ...options };
37
- this.results = {
38
- verified: true,
39
- timestamp: new Date().toISOString(),
40
- stats: {
41
- totalEntities: 0,
42
- verifiedEntities: 0,
43
- staleEntities: 0,
44
- fabricatedEntities: 0,
45
- totalRelations: 0,
46
- verifiedRelations: 0,
47
- contradictedRelations: 0,
48
- },
49
- confidenceDistribution: { L1: 0, L2: 0, L3: 0, L4: 0, L5: 0 },
50
- contradictions: [],
51
- diagnostics: [],
52
- };
53
- }
54
-
55
- verifyModel(model) {
56
- if (!model || !Array.isArray(model.entities)) {
57
- throw new Error('Invalid model: expected an object with entities array.');
58
- }
59
-
60
- const { entities, relationships = [], contradictions = [] } = model;
61
- this.results.stats.totalEntities = entities.length;
62
- this.results.stats.totalRelations = relationships.length;
63
-
64
- // Entity verification map for fast lookup
65
- const entityIndex = new Map();
66
-
67
- // 1. Verify Entity Sources & Ground Truth
68
- for (const entity of entities) {
69
- entityIndex.set(entity.id, entity);
70
- const entityVerification = this.verifyEntity(entity);
71
- if (entityVerification.status === 'verified') {
72
- this.results.stats.verifiedEntities++;
73
- this.results.confidenceDistribution[entity.confidence || 'L1']++;
74
- } else if (entityVerification.status === 'stale') {
75
- this.results.stats.staleEntities++;
76
- this.results.confidenceDistribution['L3']++;
77
- this.results.diagnostics.push({
78
- severity: 'warning',
79
- code: 'ARCH_EVIDENCE_STALE',
80
- entityId: entity.id,
81
- message: `Evidence has drifted for entity "${entity.name}" (${entity.id}). Content hash does not match.`,
82
- details: entityVerification.details,
83
- });
84
- } else {
85
- this.results.stats.fabricatedEntities++;
86
- this.results.confidenceDistribution['L5']++;
87
- this.results.verified = false;
88
- this.results.diagnostics.push({
89
- severity: 'error',
90
- code: 'ARCH_EVIDENCE_FABRICATED',
91
- entityId: entity.id,
92
- message: `Evidence does not exist in repository for entity "${entity.name}" (${entity.id}).`,
93
- details: entityVerification.details,
94
- });
95
- }
96
- }
97
-
98
- // 2. Verify Relationships & Call Sites
99
- for (const rel of relationships) {
100
- const relVerification = this.verifyRelationship(rel, entityIndex);
101
- if (relVerification.status === 'verified') {
102
- this.results.stats.verifiedRelations++;
103
- } else if (relVerification.status === 'contradicted') {
104
- this.results.stats.contradictedRelations++;
105
- this.results.verified = false;
106
- this.results.contradictions.push({
107
- id: `conflict.${rel.id}`,
108
- relationshipId: rel.id,
109
- sourceId: rel.sourceId,
110
- targetId: rel.targetId,
111
- conflictType: relVerification.conflictType || 'unreachable_call_path',
112
- claimedRelation: rel.relationType,
113
- reason: relVerification.reason,
114
- confidence: 'L5',
115
- });
116
- this.results.diagnostics.push({
117
- severity: 'error',
118
- code: 'ARCH_RELATION_CONTRADICTED',
119
- relationId: rel.id,
120
- message: `Contradiction detected in relationship ${rel.sourceId} -> ${rel.targetId}: ${relVerification.reason}`,
121
- });
122
- } else {
123
- this.results.diagnostics.push({
124
- severity: 'warning',
125
- code: 'ARCH_RELATION_UNVERIFIED',
126
- relationId: rel.id,
127
- message: `Relationship ${rel.sourceId} -> ${rel.targetId} lacks direct call-site evidence.`,
128
- });
129
- }
130
- }
131
-
132
- // 3. Reconcile explicit contradictions passed in model
133
- for (const c of contradictions) {
134
- this.results.contradictions.push(c);
135
- }
136
-
137
- return this.results;
138
- }
139
-
140
- verifyEntity(entity) {
141
- if (!entity.sources || !entity.sources.length) {
142
- return { status: 'unverified', details: { reason: 'No sources declared' } };
143
- }
144
-
145
- let anyStale = false;
146
- let anyMissing = false;
147
-
148
- for (const src of entity.sources) {
149
- const check = this.verifySourceFile(src.file, src.startLine, src.snippet, src.contentHash);
150
- if (!check.exists) anyMissing = true;
151
- if (check.stale) anyStale = true;
152
- }
153
-
154
- if (anyMissing)
155
- return { status: 'fabricated', details: { reason: 'Cited file or line does not exist' } };
156
- if (anyStale) return { status: 'stale', details: { reason: 'File content hash has drifted' } };
157
- return { status: 'verified', details: {} };
158
- }
159
-
160
- verifyRelationship(rel, entityIndex) {
161
- const source = entityIndex.get(rel.sourceId);
162
- const target = entityIndex.get(rel.targetId);
163
-
164
- if (!source) {
165
- return {
166
- status: 'contradicted',
167
- conflictType: 'missing_source_entity',
168
- reason: `Source entity ${rel.sourceId} not found.`,
169
- };
170
- }
171
- if (!target) {
172
- return {
173
- status: 'contradicted',
174
- conflictType: 'missing_target_entity',
175
- reason: `Target entity ${rel.targetId} not found.`,
176
- };
177
- }
178
-
179
- // Check evidence call site if present
180
- if (rel.evidence && rel.evidence.length > 0) {
181
- for (const ev of rel.evidence) {
182
- const check = this.verifySourceFile(ev.file, ev.startLine, ev.snippet, ev.contentHash);
183
- if (!check.exists) {
184
- return {
185
- status: 'contradicted',
186
- conflictType: 'fabricated_call_site',
187
- reason: `Evidence file ${ev.file} does not exist for relation.`,
188
- };
189
- }
190
- }
191
- return { status: 'verified' };
192
- }
193
-
194
- // If relation is an import or route, check if source imports target
195
- return { status: 'unverified', reason: 'No call-site evidence' };
196
- }
197
-
198
- verifySourceFile(relPath, lineNum, expectedSnippet, expectedHash) {
199
- const fullPath = path.resolve(this.repoRoot, relPath);
200
-
201
- // Path escape boundary defense
202
- const normalizedRepo = path.resolve(this.repoRoot);
203
- if (!fullPath.startsWith(normalizedRepo)) {
204
- return { exists: false, reason: 'Path traversal escape detected' };
205
- }
206
-
207
- if (!fs.existsSync(fullPath)) {
208
- return { exists: false, reason: 'File does not exist' };
209
- }
210
-
211
- let content;
212
- try {
213
- content = fs.readFileSync(fullPath, 'utf8');
214
- } catch (_e) {
215
- return { exists: false, reason: 'File could not be read' };
216
- }
217
-
218
- const lines = content.split('\n');
219
- if (lineNum !== undefined && lineNum !== null) {
220
- if (lineNum < 1 || lineNum > lines.length) {
221
- return {
222
- exists: false,
223
- reason: `Line ${lineNum} out of range (file has ${lines.length} lines)`,
224
- };
225
- }
226
-
227
- if (expectedHash) {
228
- const actualLine = lines[lineNum - 1] || '';
229
- const actualHash = computeSha256(actualLine).substring(0, 16);
230
- const actualFileHash = computeSha256(content).substring(0, 16);
231
- if (actualHash !== expectedHash && actualFileHash !== expectedHash) {
232
- return { exists: true, stale: true, reason: 'Content hash mismatch' };
233
- }
234
- }
235
- }
236
-
237
- return { exists: true, stale: false };
238
- }
239
-
240
- saveReport(outputPath) {
241
- const defaultPath = path.join(
242
- this.repoRoot,
243
- '.agent',
244
- 'history',
245
- 'architecture-verification.json',
246
- );
247
- const dest = outputPath || defaultPath;
248
- fs.mkdirSync(path.dirname(dest), { recursive: true });
249
- fs.writeFileSync(dest, JSON.stringify(this.results, null, 2), 'utf8');
250
- return dest;
251
- }
252
- }
253
-
254
- // ── Standalone CLI ────────────────────────────────────────────────────────────
255
- if (require.main === module) {
256
- const t = timer();
257
- const repoRoot = process.argv[2] || process.cwd();
258
- const modelFile = path.join(repoRoot, '.agent', 'history', 'architecture-model.json');
259
-
260
- console.log(banner('Tribunal Architecture Zero-Trust Verifier'));
261
-
262
- if (!fs.existsSync(modelFile)) {
263
- console.error(
264
- ` ${RED}✖ architecture-model.json not found.${RESET} Run architecture_extractor.js first.`,
265
- );
266
- process.exit(1);
267
- }
268
-
269
- const model = JSON.parse(fs.readFileSync(modelFile, 'utf8'));
270
- const verifier = new ArchitectureVerifier(repoRoot);
271
- const results = verifier.verifyModel(model);
272
- const reportPath = verifier.saveReport();
273
-
274
- const isOk =
275
- results.verified && results.diagnostics.filter(d => d.severity === 'error').length === 0;
276
- const statusColor = isOk ? GREEN : RED;
277
- const statusIcon = isOk ? BOX.check : BOX.cross_mark;
278
-
279
- console.log(
280
- ` ${statusColor}${statusIcon} Verification ${isOk ? 'PASSED' : 'FLAGGED ISSUES'}${RESET} in ${formatMs(t())}`,
281
- );
282
- console.log(
283
- ` ${DIM}Entities Verified:${RESET} ${GREEN}${results.stats.verifiedEntities}${RESET} / ${results.stats.totalEntities}`,
284
- );
285
- console.log(
286
- ` ${DIM}Stale Evidence:${RESET} ${results.stats.staleEntities > 0 ? YELLOW : GREEN}${results.stats.staleEntities}${RESET}`,
287
- );
288
- console.log(
289
- ` ${DIM}Contradictions Surfaced:${RESET} ${results.contradictions.length > 0 ? RED : GREEN}${results.contradictions.length}${RESET}`,
290
- );
291
- console.log(
292
- ` ${DIM}Confidence (L1 Facts):${RESET} ${CYAN}${results.confidenceDistribution.L1}${RESET}`,
293
- );
294
- console.log(` ${DIM}Saved Report:${RESET} ${CYAN}${reportPath}${RESET}\n`);
295
-
296
- if (!isOk && process.argv.includes('--strict')) {
297
- process.exit(1);
298
- }
299
- }
300
-
301
- module.exports = {
302
- ArchitectureVerifier,
303
- };
1
+ #!/usr/bin/env node
2
+ /**
3
+ * architecture_verifier.js — Tribunal Zero-Trust Architecture Verifier
4
+ * ═════════════════════════════════════════════════════════════════════════════
5
+ * Evaluates architectural models against ground-truth source code bytes.
6
+ *
7
+ * Capabilities:
8
+ * - Verifies all source citations (file exists, line valid, no path escapes)
9
+ * - Detects Stale Evidence via SHA-256 drift verification
10
+ * - Verifies AST Symbol and Relationship Call Sites
11
+ * - Assigns Epistemic Confidence Levels (L1 to L5)
12
+ * - Surfaces Architectural Contradictions as first-class disputable records
13
+ * - Prevents unverified agent claims from masquerading as verified facts
14
+ *
15
+ * Emits: .agent/history/architecture-verification.json
16
+ * Zero external dependencies.
17
+ */
18
+
19
+ 'use strict';
20
+
21
+ const fs = require('fs');
22
+ const path = require('path');
23
+ const crypto = require('crypto');
24
+ const { GREEN, YELLOW, CYAN, RED, DIM, RESET, BOX, banner, timer, formatMs } = require('./_colors');
25
+
26
+ function computeSha256(str) {
27
+ return crypto
28
+ .createHash('sha256')
29
+ .update(str || '')
30
+ .digest('hex');
31
+ }
32
+
33
+ class ArchitectureVerifier {
34
+ constructor(repoRoot = process.cwd(), options = {}) {
35
+ this.repoRoot = path.resolve(repoRoot);
36
+ this.options = { strict: false, ...options };
37
+ this.results = {
38
+ verified: true,
39
+ timestamp: new Date().toISOString(),
40
+ stats: {
41
+ totalEntities: 0,
42
+ verifiedEntities: 0,
43
+ staleEntities: 0,
44
+ fabricatedEntities: 0,
45
+ totalRelations: 0,
46
+ verifiedRelations: 0,
47
+ contradictedRelations: 0,
48
+ },
49
+ confidenceDistribution: { L1: 0, L2: 0, L3: 0, L4: 0, L5: 0 },
50
+ contradictions: [],
51
+ diagnostics: [],
52
+ };
53
+ }
54
+
55
+ verifyModel(model) {
56
+ if (!model || !Array.isArray(model.entities)) {
57
+ throw new Error('Invalid model: expected an object with entities array.');
58
+ }
59
+
60
+ const { entities, relationships = [], contradictions = [] } = model;
61
+ this.results.stats.totalEntities = entities.length;
62
+ this.results.stats.totalRelations = relationships.length;
63
+
64
+ // Entity verification map for fast lookup
65
+ const entityIndex = new Map();
66
+
67
+ // 1. Verify Entity Sources & Ground Truth
68
+ for (const entity of entities) {
69
+ entityIndex.set(entity.id, entity);
70
+ const entityVerification = this.verifyEntity(entity);
71
+ if (entityVerification.status === 'verified') {
72
+ this.results.stats.verifiedEntities++;
73
+ this.results.confidenceDistribution[entity.confidence || 'L1']++;
74
+ } else if (entityVerification.status === 'stale') {
75
+ this.results.stats.staleEntities++;
76
+ this.results.confidenceDistribution['L3']++;
77
+ this.results.diagnostics.push({
78
+ severity: 'warning',
79
+ code: 'ARCH_EVIDENCE_STALE',
80
+ entityId: entity.id,
81
+ message: `Evidence has drifted for entity "${entity.name}" (${entity.id}). Content hash does not match.`,
82
+ details: entityVerification.details,
83
+ });
84
+ } else {
85
+ this.results.stats.fabricatedEntities++;
86
+ this.results.confidenceDistribution['L5']++;
87
+ this.results.verified = false;
88
+ this.results.diagnostics.push({
89
+ severity: 'error',
90
+ code: 'ARCH_EVIDENCE_FABRICATED',
91
+ entityId: entity.id,
92
+ message: `Evidence does not exist in repository for entity "${entity.name}" (${entity.id}).`,
93
+ details: entityVerification.details,
94
+ });
95
+ }
96
+ }
97
+
98
+ // 2. Verify Relationships & Call Sites
99
+ for (const rel of relationships) {
100
+ const relVerification = this.verifyRelationship(rel, entityIndex);
101
+ if (relVerification.status === 'verified') {
102
+ this.results.stats.verifiedRelations++;
103
+ } else if (relVerification.status === 'contradicted') {
104
+ this.results.stats.contradictedRelations++;
105
+ this.results.verified = false;
106
+ this.results.contradictions.push({
107
+ id: `conflict.${rel.id}`,
108
+ relationshipId: rel.id,
109
+ sourceId: rel.sourceId,
110
+ targetId: rel.targetId,
111
+ conflictType: relVerification.conflictType || 'unreachable_call_path',
112
+ claimedRelation: rel.relationType,
113
+ reason: relVerification.reason,
114
+ confidence: 'L5',
115
+ });
116
+ this.results.diagnostics.push({
117
+ severity: 'error',
118
+ code: 'ARCH_RELATION_CONTRADICTED',
119
+ relationId: rel.id,
120
+ message: `Contradiction detected in relationship ${rel.sourceId} -> ${rel.targetId}: ${relVerification.reason}`,
121
+ });
122
+ } else {
123
+ this.results.diagnostics.push({
124
+ severity: 'warning',
125
+ code: 'ARCH_RELATION_UNVERIFIED',
126
+ relationId: rel.id,
127
+ message: `Relationship ${rel.sourceId} -> ${rel.targetId} lacks direct call-site evidence.`,
128
+ });
129
+ }
130
+ }
131
+
132
+ // 3. Reconcile explicit contradictions passed in model
133
+ for (const c of contradictions) {
134
+ this.results.contradictions.push(c);
135
+ }
136
+
137
+ return this.results;
138
+ }
139
+
140
+ verifyEntity(entity) {
141
+ if (!entity.sources || !entity.sources.length) {
142
+ return { status: 'unverified', details: { reason: 'No sources declared' } };
143
+ }
144
+
145
+ let anyStale = false;
146
+ let anyMissing = false;
147
+
148
+ for (const src of entity.sources) {
149
+ const check = this.verifySourceFile(src.file, src.startLine, src.snippet, src.contentHash);
150
+ if (!check.exists) anyMissing = true;
151
+ if (check.stale) anyStale = true;
152
+ }
153
+
154
+ if (anyMissing)
155
+ return { status: 'fabricated', details: { reason: 'Cited file or line does not exist' } };
156
+ if (anyStale) return { status: 'stale', details: { reason: 'File content hash has drifted' } };
157
+ return { status: 'verified', details: {} };
158
+ }
159
+
160
+ verifyRelationship(rel, entityIndex) {
161
+ const source = entityIndex.get(rel.sourceId);
162
+ const target = entityIndex.get(rel.targetId);
163
+
164
+ if (!source) {
165
+ return {
166
+ status: 'contradicted',
167
+ conflictType: 'missing_source_entity',
168
+ reason: `Source entity ${rel.sourceId} not found.`,
169
+ };
170
+ }
171
+ if (!target) {
172
+ return {
173
+ status: 'contradicted',
174
+ conflictType: 'missing_target_entity',
175
+ reason: `Target entity ${rel.targetId} not found.`,
176
+ };
177
+ }
178
+
179
+ // Check evidence call site if present
180
+ if (rel.evidence && rel.evidence.length > 0) {
181
+ for (const ev of rel.evidence) {
182
+ const check = this.verifySourceFile(ev.file, ev.startLine, ev.snippet, ev.contentHash);
183
+ if (!check.exists) {
184
+ return {
185
+ status: 'contradicted',
186
+ conflictType: 'fabricated_call_site',
187
+ reason: `Evidence file ${ev.file} does not exist for relation.`,
188
+ };
189
+ }
190
+ }
191
+ return { status: 'verified' };
192
+ }
193
+
194
+ // If relation is an import or route, check if source imports target
195
+ return { status: 'unverified', reason: 'No call-site evidence' };
196
+ }
197
+
198
+ verifySourceFile(relPath, lineNum, expectedSnippet, expectedHash) {
199
+ const fullPath = path.resolve(this.repoRoot, relPath);
200
+
201
+ // Path escape boundary defense
202
+ const normalizedRepo = path.resolve(this.repoRoot);
203
+ if (!fullPath.startsWith(normalizedRepo)) {
204
+ return { exists: false, reason: 'Path traversal escape detected' };
205
+ }
206
+
207
+ if (!fs.existsSync(fullPath)) {
208
+ return { exists: false, reason: 'File does not exist' };
209
+ }
210
+
211
+ let content;
212
+ try {
213
+ content = fs.readFileSync(fullPath, 'utf8');
214
+ } catch (_e) {
215
+ return { exists: false, reason: 'File could not be read' };
216
+ }
217
+
218
+ const lines = content.split('\n');
219
+ if (lineNum !== undefined && lineNum !== null) {
220
+ if (lineNum < 1 || lineNum > lines.length) {
221
+ return {
222
+ exists: false,
223
+ reason: `Line ${lineNum} out of range (file has ${lines.length} lines)`,
224
+ };
225
+ }
226
+
227
+ if (expectedHash) {
228
+ const actualLine = lines[lineNum - 1] || '';
229
+ const actualHash = computeSha256(actualLine).substring(0, 16);
230
+ const actualFileHash = computeSha256(content).substring(0, 16);
231
+ if (actualHash !== expectedHash && actualFileHash !== expectedHash) {
232
+ return { exists: true, stale: true, reason: 'Content hash mismatch' };
233
+ }
234
+ }
235
+ }
236
+
237
+ return { exists: true, stale: false };
238
+ }
239
+
240
+ saveReport(outputPath) {
241
+ const defaultPath = path.join(
242
+ this.repoRoot,
243
+ '.agent',
244
+ 'history',
245
+ 'architecture-verification.json',
246
+ );
247
+ const dest = outputPath || defaultPath;
248
+ fs.mkdirSync(path.dirname(dest), { recursive: true });
249
+ fs.writeFileSync(dest, JSON.stringify(this.results, null, 2), 'utf8');
250
+ return dest;
251
+ }
252
+ }
253
+
254
+ // ── Standalone CLI ────────────────────────────────────────────────────────────
255
+ if (require.main === module) {
256
+ const t = timer();
257
+ const repoRoot = process.argv[2] || process.cwd();
258
+ const modelFile = path.join(repoRoot, '.agent', 'history', 'architecture-model.json');
259
+
260
+ console.log(banner('Tribunal Architecture Zero-Trust Verifier'));
261
+
262
+ if (!fs.existsSync(modelFile)) {
263
+ console.error(
264
+ ` ${RED}✖ architecture-model.json not found.${RESET} Run architecture_extractor.js first.`,
265
+ );
266
+ process.exit(1);
267
+ }
268
+
269
+ const model = JSON.parse(fs.readFileSync(modelFile, 'utf8'));
270
+ const verifier = new ArchitectureVerifier(repoRoot);
271
+ const results = verifier.verifyModel(model);
272
+ const reportPath = verifier.saveReport();
273
+
274
+ const isOk =
275
+ results.verified && results.diagnostics.filter(d => d.severity === 'error').length === 0;
276
+ const statusColor = isOk ? GREEN : RED;
277
+ const statusIcon = isOk ? BOX.check : BOX.cross_mark;
278
+
279
+ console.log(
280
+ ` ${statusColor}${statusIcon} Verification ${isOk ? 'PASSED' : 'FLAGGED ISSUES'}${RESET} in ${formatMs(t())}`,
281
+ );
282
+ console.log(
283
+ ` ${DIM}Entities Verified:${RESET} ${GREEN}${results.stats.verifiedEntities}${RESET} / ${results.stats.totalEntities}`,
284
+ );
285
+ console.log(
286
+ ` ${DIM}Stale Evidence:${RESET} ${results.stats.staleEntities > 0 ? YELLOW : GREEN}${results.stats.staleEntities}${RESET}`,
287
+ );
288
+ console.log(
289
+ ` ${DIM}Contradictions Surfaced:${RESET} ${results.contradictions.length > 0 ? RED : GREEN}${results.contradictions.length}${RESET}`,
290
+ );
291
+ console.log(
292
+ ` ${DIM}Confidence (L1 Facts):${RESET} ${CYAN}${results.confidenceDistribution.L1}${RESET}`,
293
+ );
294
+ console.log(` ${DIM}Saved Report:${RESET} ${CYAN}${reportPath}${RESET}\n`);
295
+
296
+ if (!isOk && process.argv.includes('--strict')) {
297
+ process.exit(1);
298
+ }
299
+ }
300
+
301
+ module.exports = {
302
+ ArchitectureVerifier,
303
+ };