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
@@ -0,0 +1,535 @@
1
+ 'use strict';
2
+
3
+ const fs = require('fs');
4
+ const path = require('path');
5
+ const crypto = require('crypto');
6
+ const { loadSkills } = require('./context_broker');
7
+ const { classifySkill } = require('./skill_behavior_classifier');
8
+ const { deriveScenarios } = require('./skill_scenario_engine');
9
+ const { createFixture } = require('./skill_fixture_engine');
10
+ const { observeExecution, hashObservation } = require('./skill_observation_engine');
11
+ const { resolveExpectations, compareObservation } = require('./skill_expectation_engine');
12
+ const { createReviewPackage } = require('./skill_human_validation');
13
+
14
+ // ─── Evidence Trust Hierarchy ───────────────────────────────────────────────
15
+ const TRUST_LEVELS = {
16
+ E0: { name: 'NO_EVIDENCE', rank: 0, certifiable: false },
17
+ E1: { name: 'STRUCTURAL_EVIDENCE', rank: 1, certifiable: false },
18
+ E2: { name: 'EXISTING_TEST_EVIDENCE', rank: 2, certifiable: true },
19
+ E3: { name: 'EXISTING_IMPLEMENTATION_EVIDENCE', rank: 3, certifiable: false }, // circular risk
20
+ E4: { name: 'HUMAN_APPROVED_EVIDENCE', rank: 4, certifiable: true },
21
+ E5: { name: 'REPEATED_EMPIRICAL_EVIDENCE', rank: 5, certifiable: true },
22
+ };
23
+
24
+ // ─── Certification State Machine ────────────────────────────────────────────
25
+ const CERT_STATES = [
26
+ 'UNPROVABLE',
27
+ 'EVIDENCE_FOUND',
28
+ 'SCENARIO_READY',
29
+ 'AWAITING_VALIDATION',
30
+ 'READY_FOR_EXECUTION',
31
+ 'EXECUTING',
32
+ 'OBSERVED',
33
+ 'REPEATABILITY_PENDING',
34
+ 'CERTIFIED',
35
+ 'FAILED',
36
+ 'QUARANTINED',
37
+ 'STALE',
38
+ ];
39
+
40
+ const VALID_TRANSITIONS = {
41
+ UNPROVABLE: ['EVIDENCE_FOUND'],
42
+ EVIDENCE_FOUND: ['SCENARIO_READY', 'UNPROVABLE'],
43
+ SCENARIO_READY: ['AWAITING_VALIDATION', 'READY_FOR_EXECUTION', 'UNPROVABLE'],
44
+ AWAITING_VALIDATION: ['READY_FOR_EXECUTION', 'UNPROVABLE', 'FAILED'],
45
+ READY_FOR_EXECUTION: ['EXECUTING'],
46
+ EXECUTING: ['OBSERVED', 'FAILED', 'QUARANTINED'],
47
+ OBSERVED: ['REPEATABILITY_PENDING', 'FAILED'],
48
+ REPEATABILITY_PENDING: ['CERTIFIED', 'FAILED', 'QUARANTINED'],
49
+ CERTIFIED: ['STALE', 'QUARANTINED'],
50
+ FAILED: ['EVIDENCE_FOUND', 'QUARANTINED'], // allow re-evaluation with new evidence
51
+ QUARANTINED: [],
52
+ STALE: ['EVIDENCE_FOUND'],
53
+ };
54
+
55
+ function transition(currentState, targetState) {
56
+ const allowed = VALID_TRANSITIONS[currentState];
57
+ if (!allowed || !allowed.includes(targetState)) {
58
+ return { success: false, error: `Illegal transition: ${currentState} → ${targetState}` };
59
+ }
60
+ return { success: true, state: targetState };
61
+ }
62
+
63
+ // ─── Evidence Provenance ────────────────────────────────────────────────────
64
+ function createEvidenceRecord(sourceType, sourcePath, skillId, scenarioHash, expectationHash, trustLevel) {
65
+ const sourceHash = sourcePath && fs.existsSync(sourcePath)
66
+ ? crypto.createHash('sha256').update(fs.readFileSync(sourcePath)).digest('hex')
67
+ : 'NO_FILE';
68
+
69
+ return {
70
+ evidence_id: `EV-${Date.now()}-${crypto.randomBytes(4).toString('hex')}`,
71
+ source_type: sourceType, // TEST | CONTRACT | IMPLEMENTATION | HUMAN
72
+ source_path: sourcePath || null,
73
+ source_hash: sourceHash,
74
+ skill_id: skillId,
75
+ scenario_hash: scenarioHash,
76
+ expectation_hash: expectationHash,
77
+ created_at: new Date().toISOString(),
78
+ trust_level: trustLevel,
79
+ independent: sourceType !== 'IMPLEMENTATION', // implementation evidence is never independent
80
+ status: 'VALID',
81
+ };
82
+ }
83
+
84
+ function isCircularEvidence(evidenceRecord) {
85
+ // Implementation-sourced evidence verifying itself is circular
86
+ return evidenceRecord.source_type === 'IMPLEMENTATION' && !evidenceRecord.independent;
87
+ }
88
+
89
+ function isStaleEvidence(evidenceRecord) {
90
+ if (!evidenceRecord.source_path || !fs.existsSync(evidenceRecord.source_path)) {
91
+ return true;
92
+ }
93
+ const currentHash = crypto.createHash('sha256')
94
+ .update(fs.readFileSync(evidenceRecord.source_path))
95
+ .digest('hex');
96
+ return currentHash !== evidenceRecord.source_hash;
97
+ }
98
+
99
+ // ─── Evidence Deduplication ─────────────────────────────────────────────────
100
+ function deduplicateEvidence(evidenceItems) {
101
+ const seen = new Set();
102
+ const unique = [];
103
+ for (const item of evidenceItems) {
104
+ const key = `${item.skill_id}|${item.scenario_hash}|${item.expectation_hash}`;
105
+ if (!seen.has(key)) {
106
+ seen.add(key);
107
+ unique.push(item);
108
+ }
109
+ }
110
+ return unique;
111
+ }
112
+
113
+ // ─── Discovery ──────────────────────────────────────────────────────────────
114
+ function discoverEvidenceForSkill(skillName, skillRaw) {
115
+ const agentDir = path.join(__dirname, '..');
116
+ const repoRoot = path.join(agentDir, '..');
117
+ const sources = [];
118
+
119
+ // 1. Check for existing unit tests
120
+ const testFile = path.join(repoRoot, 'test', 'unit', `${skillName}.test.js`);
121
+ if (fs.existsSync(testFile)) {
122
+ sources.push({
123
+ type: 'TEST',
124
+ path: testFile,
125
+ trust: 'E2',
126
+ description: 'Existing unit test file',
127
+ });
128
+ }
129
+
130
+ // 2. Check for contract declarations
131
+ if (skillRaw?.verification?.assertions?.length > 0) {
132
+ sources.push({
133
+ type: 'CONTRACT',
134
+ path: null,
135
+ trust: 'E1',
136
+ description: 'Contract verification assertions',
137
+ });
138
+ }
139
+
140
+ // 3. Check for behavior scenarios in contract
141
+ if (skillRaw?.behavior?.scenarios?.length > 0) {
142
+ sources.push({
143
+ type: 'CONTRACT',
144
+ path: null,
145
+ trust: 'E1',
146
+ description: 'Contract behavior scenarios',
147
+ });
148
+ }
149
+
150
+ // 4. Check for script bindings
151
+ const skillDir = path.join(agentDir, 'skills', skillName);
152
+ if (fs.existsSync(skillDir)) {
153
+ const scriptsDir = path.join(skillDir, 'scripts');
154
+ if (fs.existsSync(scriptsDir)) {
155
+ sources.push({
156
+ type: 'IMPLEMENTATION',
157
+ path: scriptsDir,
158
+ trust: 'E3',
159
+ description: 'Skill has bound scripts',
160
+ });
161
+ }
162
+ }
163
+
164
+ return sources;
165
+ }
166
+
167
+ // ─── Scenario Generation ────────────────────────────────────────────────────
168
+ function generateCertificationScenarios(skillName, skillRaw, classification, evidenceSources) {
169
+ const scenarios = [];
170
+
171
+ for (const source of evidenceSources) {
172
+ const scenarioContent = JSON.stringify({ skill: skillName, source: source.type, trust: source.trust });
173
+ const scenarioHash = crypto.createHash('sha256').update(scenarioContent).digest('hex');
174
+
175
+ // Resolve expectations independently — NEVER from implementation output
176
+ const expectations = resolveExpectations(skillRaw);
177
+ const expectationHash = crypto.createHash('sha256').update(JSON.stringify(expectations)).digest('hex');
178
+
179
+ // Independence check: expectation source must differ from observation source
180
+ const independent = source.type !== 'IMPLEMENTATION';
181
+
182
+ scenarios.push({
183
+ scenario_id: `SCN-${Date.now()}-${crypto.randomBytes(3).toString('hex')}`,
184
+ skill_id: skillName,
185
+ input: {},
186
+ preconditions: [],
187
+ expected: {
188
+ outputs: expectations.assertions,
189
+ files: [],
190
+ exit_code: 0,
191
+ invariants: expectations.assertions,
192
+ },
193
+ evidence_sources: [source],
194
+ independence: {
195
+ verified: independent,
196
+ reason: independent
197
+ ? `Expectation from ${expectations.source}, observation from ${source.type}`
198
+ : 'CIRCULAR: implementation defines its own expectation',
199
+ },
200
+ scenario_hash: scenarioHash,
201
+ expectation_hash: expectationHash,
202
+ trust_level: source.trust,
203
+ });
204
+ }
205
+
206
+ return scenarios;
207
+ }
208
+
209
+ // ─── Sandbox Execution with Repeatability ───────────────────────────────────
210
+ const MIN_REPETITIONS = 3;
211
+
212
+ function executeSandboxed(skillName, scenario) {
213
+ const results = [];
214
+
215
+ for (let run = 0; run < MIN_REPETITIONS; run++) {
216
+ const fixture = createFixture(skillName);
217
+ const startMs = Date.now();
218
+
219
+ try {
220
+ const observation = observeExecution(skillName, fixture, {});
221
+ const durationMs = Date.now() - startMs;
222
+
223
+ results.push({
224
+ execution_id: `EXEC-${Date.now()}-${crypto.randomBytes(3).toString('hex')}`,
225
+ scenario_id: scenario.scenario_id,
226
+ run_number: run + 1,
227
+ exit_code: observation.exit_code,
228
+ duration_ms: durationMs,
229
+ stdout_hash: observation.sha256,
230
+ stderr_hash: 'none',
231
+ filesystem_hash: hashObservation(observation.filesystem_diff || []),
232
+ network_activity: [],
233
+ side_effects: [],
234
+ status: observation.exit_code === 0 ? 'PASS' : 'FAIL',
235
+ observation,
236
+ });
237
+ } finally {
238
+ fixture.cleanup();
239
+ }
240
+ }
241
+
242
+ return results;
243
+ }
244
+
245
+ function classifyRepeatability(executionResults) {
246
+ if (executionResults.length === 0) return 'FAILED';
247
+
248
+ const allPassed = executionResults.every(r => r.status === 'PASS');
249
+ if (!allPassed) return 'UNSTABLE';
250
+
251
+ // Check output consistency across runs
252
+ const hashes = executionResults.map(r => r.stdout_hash);
253
+ const uniqueHashes = new Set(hashes);
254
+
255
+ if (uniqueHashes.size === 1) return 'DETERMINISTIC';
256
+ if (uniqueHashes.size <= 2) return 'STABLE';
257
+ return 'NONDETERMINISTIC';
258
+ }
259
+
260
+ // ─── Full Pipeline ──────────────────────────────────────────────────────────
261
+ function acquireEvidenceForSkill(skillName) {
262
+ const agentDir = path.join(__dirname, '..');
263
+ const skills = loadSkills(agentDir);
264
+ const skill = skills.find(s => s.name === skillName);
265
+ if (!skill) return { skill: skillName, status: 'NOT_FOUND' };
266
+
267
+ const classification = classifySkill(skillName, skill);
268
+ let certState = 'UNPROVABLE';
269
+
270
+ // Step 1: Discover evidence
271
+ const evidenceSources = discoverEvidenceForSkill(skillName, skill);
272
+ if (evidenceSources.length === 0) {
273
+ return { skill: skillName, state: certState, evidence_count: 0, scenarios: [] };
274
+ }
275
+
276
+ // Transition: UNPROVABLE → EVIDENCE_FOUND
277
+ const t1 = transition(certState, 'EVIDENCE_FOUND');
278
+ if (!t1.success) return { skill: skillName, state: certState, error: t1.error };
279
+ certState = t1.state;
280
+
281
+ // Step 2: Generate scenarios
282
+ const scenarios = generateCertificationScenarios(skillName, skill, classification, evidenceSources);
283
+
284
+ // Filter out circular evidence scenarios
285
+ const independentScenarios = scenarios.filter(s => s.independence.verified);
286
+ if (independentScenarios.length === 0) {
287
+ return {
288
+ skill: skillName,
289
+ state: 'UNPROVABLE',
290
+ reason: 'All evidence sources are circular',
291
+ scenarios: scenarios.map(s => ({ id: s.scenario_id, circular: !s.independence.verified })),
292
+ };
293
+ }
294
+
295
+ // Transition: EVIDENCE_FOUND → SCENARIO_READY
296
+ const t2 = transition(certState, 'SCENARIO_READY');
297
+ if (!t2.success) return { skill: skillName, state: certState, error: t2.error };
298
+ certState = t2.state;
299
+
300
+ // Step 3: Check if expectations exist independently
301
+ const expectations = resolveExpectations(skill);
302
+ if (expectations.source === 'none') {
303
+ // Reference-only or no contract — needs human validation or stays unprovable
304
+ if (classification.class === 'REFERENCE_ONLY') {
305
+ return {
306
+ skill: skillName,
307
+ state: 'UNPROVABLE',
308
+ reason: 'Reference-only skill cannot be behaviorally certified',
309
+ certification: {
310
+ structural: { status: 'CERTIFIED' },
311
+ behavioral: { status: 'UNPROVABLE' },
312
+ safety: { status: 'CERTIFIED' },
313
+ overall: { status: 'PARTIAL' },
314
+ },
315
+ };
316
+ }
317
+ // Needs human validation
318
+ const t3 = transition(certState, 'AWAITING_VALIDATION');
319
+ if (!t3.success) return { skill: skillName, state: certState, error: t3.error };
320
+ certState = t3.state;
321
+
322
+ const reviewPkg = createReviewPackage(skillName, expectations, {});
323
+ return {
324
+ skill: skillName,
325
+ state: certState,
326
+ reason: 'No independent expectations — requires human validation',
327
+ review_package: reviewPkg,
328
+ };
329
+ }
330
+
331
+ // Transition to execution
332
+ const t4 = transition(certState, 'READY_FOR_EXECUTION');
333
+ if (!t4.success) return { skill: skillName, state: certState, error: t4.error };
334
+ certState = t4.state;
335
+
336
+ const t5 = transition(certState, 'EXECUTING');
337
+ if (!t5.success) return { skill: skillName, state: certState, error: t5.error };
338
+ certState = t5.state;
339
+
340
+ // Step 4: Execute in sandbox with repeatability
341
+ const allExecutionResults = [];
342
+ const scenarioResults = [];
343
+
344
+ for (const scenario of independentScenarios) {
345
+ const execResults = executeSandboxed(skillName, scenario);
346
+ allExecutionResults.push(...execResults);
347
+
348
+ const repeatability = classifyRepeatability(execResults);
349
+ const comparison = compareObservation(expectations, execResults[0]?.observation || {});
350
+
351
+ scenarioResults.push({
352
+ scenario_id: scenario.scenario_id,
353
+ trust_level: scenario.trust_level,
354
+ repeatability,
355
+ comparison,
356
+ runs: execResults.length,
357
+ passed: execResults.filter(r => r.status === 'PASS').length,
358
+ });
359
+ }
360
+
361
+ // Transition: EXECUTING → OBSERVED
362
+ const t6 = transition(certState, 'OBSERVED');
363
+ if (!t6.success) return { skill: skillName, state: certState, error: t6.error };
364
+ certState = t6.state;
365
+
366
+ // Step 5: Evaluate repeatability
367
+ const t7 = transition(certState, 'REPEATABILITY_PENDING');
368
+ if (!t7.success) return { skill: skillName, state: certState, error: t7.error };
369
+ certState = t7.state;
370
+
371
+ // Step 6: Determine certification
372
+ const allDeterministic = scenarioResults.every(r => r.repeatability === 'DETERMINISTIC');
373
+ const allPassed = scenarioResults.every(r => r.comparison === 'PASS');
374
+ const verifiedScenarios = scenarioResults.filter(r => r.comparison === 'PASS' && r.repeatability === 'DETERMINISTIC');
375
+
376
+ // Calculate coverage
377
+ const coverage = independentScenarios.length > 0
378
+ ? Math.round((verifiedScenarios.length / independentScenarios.length) * 100)
379
+ : 0;
380
+
381
+ let finalState;
382
+ if (allPassed && allDeterministic && verifiedScenarios.length > 0) {
383
+ const t8 = transition(certState, 'CERTIFIED');
384
+ finalState = t8.success ? 'CERTIFIED' : 'FAILED';
385
+ } else if (verifiedScenarios.length > 0) {
386
+ // Partial — some scenarios verified, some not
387
+ finalState = 'REPEATABILITY_PENDING'; // stays pending
388
+ } else {
389
+ const t8 = transition(certState, 'FAILED');
390
+ finalState = t8.success ? 'FAILED' : certState;
391
+ }
392
+
393
+ return {
394
+ skill: skillName,
395
+ state: finalState,
396
+ classification: classification.class,
397
+ evidence_count: evidenceSources.length,
398
+ scenario_count: independentScenarios.length,
399
+ verified_scenarios: verifiedScenarios.length,
400
+ failed_scenarios: scenarioResults.filter(r => r.comparison === 'FAIL').length,
401
+ repeatability: allDeterministic ? 'DETERMINISTIC' : 'MIXED',
402
+ coverage,
403
+ sandbox_status: 'CLEAN',
404
+ certification: {
405
+ structural: { status: 'CERTIFIED' },
406
+ behavioral: {
407
+ status: finalState === 'CERTIFIED' ? 'VERIFIED' : (coverage > 0 ? 'PARTIAL' : 'UNPROVABLE'),
408
+ coverage,
409
+ verified_behaviors: verifiedScenarios.map(s => s.scenario_id),
410
+ unverified_behaviors: scenarioResults.filter(r => r.comparison !== 'PASS').map(s => s.scenario_id),
411
+ },
412
+ safety: { status: 'CERTIFIED' },
413
+ overall: {
414
+ status: finalState === 'CERTIFIED' ? 'CERTIFIED' : (coverage > 0 ? 'PARTIAL' : 'UNPROVABLE'),
415
+ },
416
+ },
417
+ scenario_results: scenarioResults,
418
+ };
419
+ }
420
+
421
+ // ─── Pilot Selection (Deterministic) ────────────────────────────────────────
422
+ function selectPilot() {
423
+ const agentDir = path.join(__dirname, '..');
424
+ const skills = loadSkills(agentDir);
425
+ const pilot = [];
426
+ const reasons = {};
427
+
428
+ // Sort for determinism
429
+ const sorted = [...skills].sort((a, b) => a.name.localeCompare(b.name));
430
+
431
+ // Category finders
432
+ const find = (predicate, reason) => {
433
+ const s = sorted.find(sk => predicate(sk) && !pilot.includes(sk.name));
434
+ if (s) { pilot.push(s.name); reasons[s.name] = reason; }
435
+ };
436
+
437
+ // 1. Executable skill
438
+ find(s => {
439
+ const c = classifySkill(s.name, s);
440
+ return c.class === 'EXECUTABLE' && s.content && s.content.includes('node ');
441
+ }, 'Executable skill with node binding');
442
+
443
+ // 2. Contract-executable
444
+ find(s => s?.verification?.assertions?.length > 0, 'Contract with explicit assertions');
445
+
446
+ // 3. Reference-only
447
+ find(s => {
448
+ const c = classifySkill(s.name, s);
449
+ return c.class === 'REFERENCE_ONLY';
450
+ }, 'Reference-only skill (behavioral certification excluded)');
451
+
452
+ // 4. Routing skill
453
+ find(s => {
454
+ const c = classifySkill(s.name, s);
455
+ return c.class === 'ROUTING';
456
+ }, 'Routing skill (mock-router verification)');
457
+
458
+ // 5. Composite skill
459
+ find(s => s?.dependencies?.length > 0, 'Composite skill with dependencies');
460
+
461
+ // 6. Governance skill
462
+ find(s => {
463
+ const c = classifySkill(s.name, s);
464
+ return c.class === 'GOVERNANCE';
465
+ }, 'Governance skill (static-analysis verification)');
466
+
467
+ // 7. Skill with existing tests
468
+ const repoRoot = path.join(agentDir, '..');
469
+ find(s => fs.existsSync(path.join(repoRoot, 'test', 'unit', `${s.name}.test.js`)), 'Has existing unit test');
470
+
471
+ // 8. Skill with partial evidence
472
+ find(s => {
473
+ const sources = discoverEvidenceForSkill(s.name, s);
474
+ return sources.length > 0 && sources.length < 3;
475
+ }, 'Partial evidence available');
476
+
477
+ // 9. Skill with stale evidence (approximation: old skills with no recent tests)
478
+ find(s => s.name.includes('legacy') || s.name.includes('deprecated'), 'Potentially stale evidence');
479
+
480
+ // 10. Requires human validation
481
+ find(s => {
482
+ const exp = resolveExpectations(s);
483
+ return exp.source === 'none' && classifySkill(s.name, s).class !== 'REFERENCE_ONLY';
484
+ }, 'No mechanical expectations — requires human validation');
485
+
486
+ // 11. Deterministic file mutation
487
+ find(s => s.content && (s.content.includes('fs.write') || s.content.includes('mkdir')), 'Deterministic file mutation detected');
488
+
489
+ // 12. Deliberately unprovable
490
+ find(s => {
491
+ const sources = discoverEvidenceForSkill(s.name, s);
492
+ return sources.length === 0;
493
+ }, 'Deliberately unprovable — zero evidence sources');
494
+
495
+ return { pilot, reasons };
496
+ }
497
+
498
+ // ─── CLI ────────────────────────────────────────────────────────────────────
499
+ if (require.main === module) {
500
+ const cmd = process.argv[2];
501
+
502
+ if (cmd === 'discover') {
503
+ const skillName = process.argv[3];
504
+ const agentDir = path.join(__dirname, '..');
505
+ const skills = loadSkills(agentDir);
506
+ const skill = skills.find(s => s.name === skillName);
507
+ if (!skill) { console.log('Skill not found'); process.exit(1); }
508
+ console.log(JSON.stringify(discoverEvidenceForSkill(skillName, skill), null, 2));
509
+ } else if (cmd === 'acquire') {
510
+ const skillName = process.argv[3];
511
+ console.log(JSON.stringify(acquireEvidenceForSkill(skillName), null, 2));
512
+ } else if (cmd === 'pilot') {
513
+ console.log(JSON.stringify(selectPilot(), null, 2));
514
+ } else {
515
+ console.log('Usage: node skill_evidence_acquisition_engine.js <discover|acquire|pilot> [skillName]');
516
+ }
517
+ }
518
+
519
+ module.exports = {
520
+ TRUST_LEVELS,
521
+ CERT_STATES,
522
+ VALID_TRANSITIONS,
523
+ transition,
524
+ createEvidenceRecord,
525
+ isCircularEvidence,
526
+ isStaleEvidence,
527
+ deduplicateEvidence,
528
+ discoverEvidenceForSkill,
529
+ generateCertificationScenarios,
530
+ executeSandboxed,
531
+ classifyRepeatability,
532
+ acquireEvidenceForSkill,
533
+ selectPilot,
534
+ MIN_REPETITIONS,
535
+ };
@@ -0,0 +1,83 @@
1
+ const fs = require('fs');
2
+ const path = require('path');
3
+ const { loadSkills } = require('./context_broker');
4
+ const { classifySkill } = require('./skill_behavior_classifier');
5
+
6
+ const CONFIDENCE_MODEL = {
7
+ EXPLICIT_ACCEPTANCE: 1.0,
8
+ PASSING_TEST: 0.98,
9
+ FORMAL_SCHEMA: 0.95,
10
+ EXECUTABLE_CONTRACT: 0.92,
11
+ SCRIPT_BINDING: 0.9,
12
+ DOCUMENTED_OUTPUT: 0.8,
13
+ EXECUTION_TRACE: 0.75,
14
+ HUMAN_REVIEW: 0.7,
15
+ HEURISTIC: 0.2,
16
+ };
17
+
18
+ function determineSkillEvidenceClass(skillRaw, classification) {
19
+ if (classification.class === 'REFERENCE_ONLY') return 'CLASS D';
20
+ if (classification.class === 'ROUTING') return 'CLASS A'; // Can mock route
21
+ if (classification.class === 'EXECUTABLE') {
22
+ if (
23
+ skillRaw.content &&
24
+ (skillRaw.content.includes('npm run') || skillRaw.content.includes('node '))
25
+ ) {
26
+ return 'CLASS A';
27
+ }
28
+ return 'CLASS B';
29
+ }
30
+ return 'CLASS F';
31
+ }
32
+
33
+ function gatherEvidenceInventory() {
34
+ const agentDir = path.join(__dirname, '..');
35
+ const skills = loadSkills(agentDir);
36
+ const inventory = {};
37
+
38
+ for (const skill of skills) {
39
+ const classification = classifySkill(skill.name, skill);
40
+ const evidenceClass = determineSkillEvidenceClass(skill, classification);
41
+
42
+ let confidence = 0.0;
43
+ if (evidenceClass === 'CLASS A') confidence = CONFIDENCE_MODEL.SCRIPT_BINDING;
44
+ else if (evidenceClass === 'CLASS B') confidence = CONFIDENCE_MODEL.EXECUTABLE_CONTRACT;
45
+ else if (evidenceClass === 'CLASS D') confidence = CONFIDENCE_MODEL.DOCUMENTED_OUTPUT;
46
+
47
+ inventory[skill.name] = {
48
+ skill_id: skill.name,
49
+ evidence_class: evidenceClass,
50
+ evidence_level: evidenceClass === 'CLASS F' ? 'NO_EVIDENCE' : 'PARTIAL_EVIDENCE',
51
+ confidence,
52
+ };
53
+ }
54
+
55
+ return inventory;
56
+ }
57
+
58
+ function generateBootstrapQueue() {
59
+ const inventory = gatherEvidenceInventory();
60
+ const queue = { A: [], B: [], C: [], D: [], E: [] };
61
+
62
+ for (const [name, inv] of Object.entries(inventory)) {
63
+ if (inv.evidence_class === 'CLASS A') queue.A.push(name);
64
+ else if (inv.evidence_class === 'CLASS B') queue.B.push(name);
65
+ else if (inv.evidence_class === 'CLASS E')
66
+ queue.C.push(name); // Human
67
+ else if (inv.evidence_class === 'CLASS D') queue.D.push(name);
68
+ else queue.E.push(name); // F -> E queue (Unprovable)
69
+ }
70
+
71
+ return queue;
72
+ }
73
+
74
+ if (require.main === module) {
75
+ const q = generateBootstrapQueue();
76
+ console.log(JSON.stringify(q, null, 2));
77
+ }
78
+
79
+ module.exports = {
80
+ gatherEvidenceInventory,
81
+ generateBootstrapQueue,
82
+ CONFIDENCE_MODEL,
83
+ };
@@ -0,0 +1,38 @@
1
+ function resolveExpectations(skillRaw) {
2
+ const exp = {
3
+ source: 'none',
4
+ assertions: [],
5
+ };
6
+
7
+ if (skillRaw?.verification?.assertions?.length > 0) {
8
+ exp.source = 'verification.assertions';
9
+ exp.assertions = skillRaw.verification.assertions;
10
+ return exp;
11
+ }
12
+
13
+ if (skillRaw?.behavior?.scenarios?.length > 0) {
14
+ exp.source = 'behavior.scenarios';
15
+ exp.assertions = ['scenario_match'];
16
+ return exp;
17
+ }
18
+
19
+ return exp; // None found
20
+ }
21
+
22
+ function compareObservation(expectation, observation) {
23
+ if (expectation.source === 'none') {
24
+ return 'UNPROVABLE';
25
+ }
26
+
27
+ // For deterministic mocking, if observation has what we expect
28
+ if (observation.exit_code === 0 && expectation.assertions.length > 0) {
29
+ return 'PASS';
30
+ }
31
+
32
+ return 'FAIL';
33
+ }
34
+
35
+ module.exports = {
36
+ resolveExpectations,
37
+ compareObservation,
38
+ };
@@ -0,0 +1,24 @@
1
+ const fs = require('fs');
2
+ const path = require('path');
3
+ const os = require('os');
4
+ const crypto = require('crypto');
5
+
6
+ function createFixture(skillId) {
7
+ const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), `tribunal-fixture-${skillId}-`));
8
+
9
+ return {
10
+ fixture_id: `FIX-${Date.now()}`,
11
+ path: tmpDir,
12
+ created_at: new Date().toISOString(),
13
+ cleanup_policy: 'always',
14
+ cleanup: () => {
15
+ try {
16
+ fs.rmSync(tmpDir, { recursive: true, force: true });
17
+ } catch (e) {}
18
+ },
19
+ };
20
+ }
21
+
22
+ module.exports = {
23
+ createFixture,
24
+ };