tribunal-kit 9.2.6 → 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 (836) hide show
  1. package/.agent/ARCHITECTURE.md +4 -4
  2. package/.agent/data/skill_certification_ledger.jsonl +40 -0
  3. package/.agent/data/skill_ontology.json +138 -0
  4. package/.agent/history/architecture-intelligence.html +1487 -401
  5. package/.agent/history/architecture-model.json +16130 -5802
  6. package/.agent/history/architecture-verification.json +6 -6
  7. package/.agent/routing_index.json +656 -1566
  8. package/.agent/rules/GEMINI.md +1 -1
  9. package/.agent/scripts/adaptive_execution.js +704 -0
  10. package/.agent/scripts/architecture_diff.js +60 -17
  11. package/.agent/scripts/architecture_extractor.js +60 -21
  12. package/.agent/scripts/architecture_health.js +58 -21
  13. package/.agent/scripts/architecture_intelligence.js +3100 -0
  14. package/.agent/scripts/architecture_verifier.js +46 -13
  15. package/.agent/scripts/architecture_visualizer.js +1536 -421
  16. package/.agent/scripts/blast_radius_engine.js +64 -24
  17. package/.agent/scripts/capability_evolution.js +555 -0
  18. package/.agent/scripts/concept_extractor.js +240 -0
  19. package/.agent/scripts/consideration_engine.js +284 -0
  20. package/.agent/scripts/context_broker.js +397 -31
  21. package/.agent/scripts/corpus_certification_orchestrator.js +502 -0
  22. package/.agent/scripts/corpus_validation_engine.js +311 -0
  23. package/.agent/scripts/coverage_engine.js +102 -0
  24. package/.agent/scripts/cross_domain_engine.js +1883 -0
  25. package/.agent/scripts/engineering_memory.js +1442 -0
  26. package/.agent/scripts/final_corpus_validation_engine.js +405 -0
  27. package/.agent/scripts/integrity_manifest.js +1 -5
  28. package/.agent/scripts/intent_extractor.js +130 -0
  29. package/.agent/scripts/judgment_engine.js +790 -0
  30. package/.agent/scripts/materiality_engine.js +251 -0
  31. package/.agent/scripts/outcome_engine.js +639 -0
  32. package/.agent/scripts/outcome_optimization_engine.js +1632 -0
  33. package/.agent/scripts/routing_evaluation_engine.js +184 -0
  34. package/.agent/scripts/simulation_engine.js +1478 -0
  35. package/.agent/scripts/skill_behavior_classifier.js +90 -0
  36. package/.agent/scripts/skill_behavior_harness.js +105 -0
  37. package/.agent/scripts/skill_certification_engine.js +586 -0
  38. package/.agent/scripts/skill_contract_engine.js +424 -0
  39. package/.agent/scripts/skill_coverage_expansion_engine.js +505 -0
  40. package/.agent/scripts/skill_evidence_acquisition_engine.js +535 -0
  41. package/.agent/scripts/skill_evidence_engine.js +83 -0
  42. package/.agent/scripts/skill_expectation_engine.js +38 -0
  43. package/.agent/scripts/skill_fixture_engine.js +24 -0
  44. package/.agent/scripts/skill_human_validation.js +32 -0
  45. package/.agent/scripts/skill_intelligence.js +1300 -0
  46. package/.agent/scripts/skill_observation_engine.js +25 -0
  47. package/.agent/scripts/skill_ontology_engine.js +83 -0
  48. package/.agent/scripts/skill_quality_engine.js +343 -0
  49. package/.agent/scripts/skill_reconstruction_engine.js +164 -0
  50. package/.agent/scripts/skill_remediation_engine.js +326 -0
  51. package/.agent/scripts/skill_scenario_engine.js +108 -0
  52. package/.agent/scripts/skill_test_authoring_engine.js +1011 -0
  53. package/.agent/scripts/verification_auditor.js +346 -0
  54. package/.agent/skill-intelligence/taxonomy/engineering-concepts.json +555 -0
  55. package/.agent/skill_topic_map.json +15 -55
  56. package/.agent/skills/12-principles-of-animation/SKILL.md +9 -0
  57. package/.agent/skills/60fps-animation/SKILL.md +14 -0
  58. package/.agent/skills/accessible-animation/SKILL.md +9 -0
  59. package/.agent/skills/adapt/SKILL.md +8 -0
  60. package/.agent/skills/adr-generation/SKILL.md +9 -0
  61. package/.agent/skills/advanced-rag-pipelines/SKILL.md +9 -0
  62. package/.agent/skills/agent-organizer/SKILL.md +8 -0
  63. package/.agent/skills/agent-syscall-guidelines/SKILL.md +10 -0
  64. package/.agent/skills/agentic-patterns/SKILL.md +9 -0
  65. package/.agent/skills/agentic-workflows-2026/SKILL.md +8 -0
  66. package/.agent/skills/agentshield-security/SKILL.md +16 -0
  67. package/.agent/skills/ai-app-hardening/SKILL.md +7 -0
  68. package/.agent/skills/ai-prompt-injection-defense/SKILL.md +9 -0
  69. package/.agent/skills/animation-on-scroll/SKILL.md +9 -0
  70. package/.agent/skills/animation-systems/SKILL.md +8 -0
  71. package/.agent/skills/antfu-conventions/SKILL.md +9 -0
  72. package/.agent/skills/anti-slop-enforcement/SKILL.md +11 -0
  73. package/.agent/skills/api-patterns/SKILL.md +9 -0
  74. package/.agent/skills/api-security-auditor/SKILL.md +10 -0
  75. package/.agent/skills/app-builder/SKILL.md +8 -0
  76. package/.agent/skills/appflow-wireframe/SKILL.md +9 -0
  77. package/.agent/skills/apple-design/SKILL.md +8 -0
  78. package/.agent/skills/architecture/SKILL.md +8 -0
  79. package/.agent/skills/architecture-drift/SKILL.md +9 -0
  80. package/.agent/skills/architecture-intelligence/SKILL.md +17 -0
  81. package/.agent/skills/audit-and-fix/SKILL.md +8 -0
  82. package/.agent/skills/authentication-best-practices/SKILL.md +10 -0
  83. package/.agent/skills/autonomous-execution/SKILL.md +9 -0
  84. package/.agent/skills/backend-alembic/SKILL.md +16 -0
  85. package/.agent/skills/backend-architecture-auditor/SKILL.md +16 -0
  86. package/.agent/skills/backend-mongodb/SKILL.md +10 -0
  87. package/.agent/skills/backend-mysql/SKILL.md +16 -0
  88. package/.agent/skills/backend-performance-auditor/SKILL.md +10 -0
  89. package/.agent/skills/backend-postgresql/SKILL.md +10 -0
  90. package/.agent/skills/backend-redis/SKILL.md +10 -0
  91. package/.agent/skills/backend-security-expert/SKILL.md +10 -0
  92. package/.agent/skills/backend-sqlalchemy/SKILL.md +10 -0
  93. package/.agent/skills/backend-sqlite/SKILL.md +10 -0
  94. package/.agent/skills/backend-testing-auditor/SKILL.md +15 -0
  95. package/.agent/skills/baseline-ui/SKILL.md +8 -0
  96. package/.agent/skills/bash-linux/SKILL.md +9 -0
  97. package/.agent/skills/behavioral-modes/SKILL.md +9 -0
  98. package/.agent/skills/better-colors/SKILL.md +9 -0
  99. package/.agent/skills/better-typography/SKILL.md +9 -0
  100. package/.agent/skills/better-ui/SKILL.md +8 -0
  101. package/.agent/skills/bolder/SKILL.md +8 -0
  102. package/.agent/skills/brainstorming/SKILL.md +8 -0
  103. package/.agent/skills/browser-audit/SKILL.md +9 -0
  104. package/.agent/skills/browser-native-ai/SKILL.md +8 -0
  105. package/.agent/skills/build-primitive/SKILL.md +8 -0
  106. package/.agent/skills/building-native-ui/SKILL.md +7 -0
  107. package/.agent/skills/cicd-pro/SKILL.md +9 -0
  108. package/.agent/skills/clarify/SKILL.md +8 -0
  109. package/.agent/skills/clean-code/SKILL.md +8 -0
  110. package/.agent/skills/cloud-architect/SKILL.md +8 -0
  111. package/.agent/skills/cobejs/SKILL.md +8 -0
  112. package/.agent/skills/code-review-checklist/SKILL.md +9 -0
  113. package/.agent/skills/codebase-design/SKILL.md +14 -0
  114. package/.agent/skills/colorize/SKILL.md +8 -0
  115. package/.agent/skills/compact-landing/SKILL.md +9 -0
  116. package/.agent/skills/company-logos/SKILL.md +9 -0
  117. package/.agent/skills/config-validator/SKILL.md +9 -0
  118. package/.agent/skills/containerization-pro/SKILL.md +9 -0
  119. package/.agent/skills/context-engineering-pro/SKILL.md +10 -0
  120. package/.agent/skills/create-design-md/SKILL.md +7 -0
  121. package/.agent/skills/critique/SKILL.md +8 -0
  122. package/.agent/skills/csharp-developer/SKILL.md +9 -0
  123. package/.agent/skills/data-validation-schemas/SKILL.md +8 -0
  124. package/.agent/skills/database-design/SKILL.md +8 -0
  125. package/.agent/skills/delight/SKILL.md +8 -0
  126. package/.agent/skills/deployment-procedures/SKILL.md +9 -0
  127. package/.agent/skills/design-lab/SKILL.md +8 -0
  128. package/.agent/skills/devops-engineer/SKILL.md +9 -0
  129. package/.agent/skills/devops-incident-responder/SKILL.md +16 -0
  130. package/.agent/skills/diagnosing-bugs/SKILL.md +9 -0
  131. package/.agent/skills/distill/SKILL.md +8 -0
  132. package/.agent/skills/documentation-templates/SKILL.md +9 -0
  133. package/.agent/skills/domain-modeling/SKILL.md +9 -0
  134. package/.agent/skills/duckdb-analytical-sql/SKILL.md +10 -0
  135. package/.agent/skills/edge-ai-mobile/SKILL.md +8 -0
  136. package/.agent/skills/edge-computing/SKILL.md +9 -0
  137. package/.agent/skills/emil-design-eng/SKILL.md +9 -0
  138. package/.agent/skills/error-resilience/SKILL.md +8 -0
  139. package/.agent/skills/expo-router-v4/SKILL.md +9 -0
  140. package/.agent/skills/extract-design-system/SKILL.md +9 -0
  141. package/.agent/skills/fabel-protocol/SKILL.md +9 -0
  142. package/.agent/skills/failure-mode-analysis/SKILL.md +10 -0
  143. package/.agent/skills/fastapi-pro/SKILL.md +9 -0
  144. package/.agent/skills/fixing-accessibility/SKILL.md +9 -0
  145. package/.agent/skills/fixing-metadata/SKILL.md +9 -0
  146. package/.agent/skills/fixing-motion-performance/SKILL.md +9 -0
  147. package/.agent/skills/framer-motion-expert/SKILL.md +9 -0
  148. package/.agent/skills/frontend-design/SKILL.md +7 -0
  149. package/.agent/skills/frontend-security-expert/SKILL.md +9 -0
  150. package/.agent/skills/game-design-expert/SKILL.md +9 -0
  151. package/.agent/skills/game-engineering-expert/SKILL.md +16 -0
  152. package/.agent/skills/generative-ui-expert/SKILL.md +9 -0
  153. package/.agent/skills/geo-fundamentals/SKILL.md +9 -0
  154. package/.agent/skills/git-pro/SKILL.md +9 -0
  155. package/.agent/skills/github-operations/SKILL.md +9 -0
  156. package/.agent/skills/gpt-taste/SKILL.md +9 -0
  157. package/.agent/skills/graph-engineering/SKILL.md +16 -0
  158. package/.agent/skills/gsap-core/SKILL.md +9 -0
  159. package/.agent/skills/gsap-frameworks/SKILL.md +9 -0
  160. package/.agent/skills/gsap-performance/SKILL.md +9 -0
  161. package/.agent/skills/gsap-plugins/SKILL.md +9 -0
  162. package/.agent/skills/gsap-react/SKILL.md +9 -0
  163. package/.agent/skills/gsap-scrolltrigger/SKILL.md +9 -0
  164. package/.agent/skills/gsap-timeline/SKILL.md +9 -0
  165. package/.agent/skills/gsap-utils/SKILL.md +9 -0
  166. package/.agent/skills/harden/SKILL.md +8 -0
  167. package/.agent/skills/harness-protocol/SKILL.md +9 -0
  168. package/.agent/skills/hf-cli/SKILL.md +11 -0
  169. package/.agent/skills/hf-cloud-aws-context-discovery/SKILL.md +10 -0
  170. package/.agent/skills/hf-cloud-python-env-setup/SKILL.md +10 -0
  171. package/.agent/skills/hf-cloud-sagemaker-deployment-planner/SKILL.md +10 -0
  172. package/.agent/skills/hf-cloud-sagemaker-iam-preflight/SKILL.md +10 -0
  173. package/.agent/skills/hf-cloud-sagemaker-production-defaults/SKILL.md +10 -0
  174. package/.agent/skills/hf-cloud-serving-image-selection/SKILL.md +10 -0
  175. package/.agent/skills/hf-mem/SKILL.md +11 -0
  176. package/.agent/skills/huggingface-best/SKILL.md +9 -0
  177. package/.agent/skills/huggingface-community-evals/SKILL.md +11 -0
  178. package/.agent/skills/huggingface-datasets/SKILL.md +10 -0
  179. package/.agent/skills/huggingface-gradio/SKILL.md +10 -0
  180. package/.agent/skills/huggingface-llm-trainer/SKILL.md +10 -0
  181. package/.agent/skills/huggingface-local-models/SKILL.md +10 -0
  182. package/.agent/skills/huggingface-lora-space-builder/SKILL.md +11 -0
  183. package/.agent/skills/huggingface-paper-publisher/SKILL.md +11 -0
  184. package/.agent/skills/huggingface-papers/SKILL.md +11 -0
  185. package/.agent/skills/huggingface-spaces/SKILL.md +10 -0
  186. package/.agent/skills/huggingface-tool-builder/SKILL.md +11 -0
  187. package/.agent/skills/huggingface-trackio/SKILL.md +11 -0
  188. package/.agent/skills/huggingface-vision-trainer/SKILL.md +11 -0
  189. package/.agent/skills/huggingface-zerogpu/SKILL.md +11 -0
  190. package/.agent/skills/human-gate-negotiation/SKILL.md +11 -0
  191. package/.agent/skills/i18n-localization/SKILL.md +9 -0
  192. package/.agent/skills/impeccable/SKILL.md +8 -0
  193. package/.agent/skills/improve-codebase-architecture/SKILL.md +10 -0
  194. package/.agent/skills/improve-ui/SKILL.md +8 -0
  195. package/.agent/skills/intelligent-routing/SKILL.md +9 -0
  196. package/.agent/skills/knowledge-graph/SKILL.md +9 -0
  197. package/.agent/skills/landing-page/SKILL.md +9 -0
  198. package/.agent/skills/lint-and-validate/SKILL.md +9 -0
  199. package/.agent/skills/llm-engineering/SKILL.md +9 -0
  200. package/.agent/skills/local-first/SKILL.md +10 -0
  201. package/.agent/skills/lottie-animation/SKILL.md +9 -0
  202. package/.agent/skills/marquee-loop/SKILL.md +9 -0
  203. package/.agent/skills/masked-reveal/SKILL.md +9 -0
  204. package/.agent/skills/mcp-builder/SKILL.md +9 -0
  205. package/.agent/skills/micro-interaction/SKILL.md +9 -0
  206. package/.agent/skills/mobile-design/SKILL.md +7 -0
  207. package/.agent/skills/monorepo-management/SKILL.md +9 -0
  208. package/.agent/skills/morphing-icons/SKILL.md +9 -0
  209. package/.agent/skills/motion-engineering/SKILL.md +8 -0
  210. package/.agent/skills/nextjs-react-expert/SKILL.md +10 -0
  211. package/.agent/skills/nodejs-best-practices/SKILL.md +16 -0
  212. package/.agent/skills/observability/SKILL.md +8 -0
  213. package/.agent/skills/opentelemetry-observability/SKILL.md +9 -0
  214. package/.agent/skills/page-transition-animation/SKILL.md +10 -0
  215. package/.agent/skills/parallel-agents/SKILL.md +15 -0
  216. package/.agent/skills/performance-profiling/SKILL.md +9 -0
  217. package/.agent/skills/plan-writing/SKILL.md +8 -0
  218. package/.agent/skills/platform-engineer/SKILL.md +9 -0
  219. package/.agent/skills/platform-engineering-opentofu/SKILL.md +10 -0
  220. package/.agent/skills/playwright-ai-e2e/SKILL.md +9 -0
  221. package/.agent/skills/playwright-best-practices/SKILL.md +16 -0
  222. package/.agent/skills/polish/SKILL.md +8 -0
  223. package/.agent/skills/powershell-windows/SKILL.md +9 -0
  224. package/.agent/skills/pricing-page/SKILL.md +9 -0
  225. package/.agent/skills/product-aware-heuristics/SKILL.md +10 -0
  226. package/.agent/skills/progressive-blur/SKILL.md +9 -0
  227. package/.agent/skills/project-idioms/SKILL.md +8 -0
  228. package/.agent/skills/property-based-testing/SKILL.md +9 -0
  229. package/.agent/skills/python-patterns/SKILL.md +9 -0
  230. package/.agent/skills/python-pro/SKILL.md +9 -0
  231. package/.agent/skills/quieter/SKILL.md +8 -0
  232. package/.agent/skills/react-doctor/SKILL.md +9 -0
  233. package/.agent/skills/react-specialist/SKILL.md +9 -0
  234. package/.agent/skills/readme-builder/SKILL.md +9 -0
  235. package/.agent/skills/realtime-patterns/SKILL.md +9 -0
  236. package/.agent/skills/red-team-tactics/SKILL.md +16 -0
  237. package/.agent/skills/redesign-skill/SKILL.md +9 -0
  238. package/.agent/skills/review-animations/SKILL.md +8 -0
  239. package/.agent/skills/rust-pro/SKILL.md +9 -0
  240. package/.agent/skills/semantic-filesystem-navigation/SKILL.md +11 -0
  241. package/.agent/skills/seo-fundamentals/SKILL.md +9 -0
  242. package/.agent/skills/server-management/SKILL.md +8 -0
  243. package/.agent/skills/session-log-interrogation/SKILL.md +11 -0
  244. package/.agent/skills/shadcn-ui-expert/SKILL.md +9 -0
  245. package/.agent/skills/shape/SKILL.md +8 -0
  246. package/.agent/skills/skill-creator/SKILL.md +9 -0
  247. package/.agent/skills/soft-skill/SKILL.md +9 -0
  248. package/.agent/skills/sounds-on-the-web/SKILL.md +9 -0
  249. package/.agent/skills/sql-pro/SKILL.md +9 -0
  250. package/.agent/skills/subagent-driven-development/SKILL.md +11 -0
  251. package/.agent/skills/supabase-postgres-best-practices/SKILL.md +17 -0
  252. package/.agent/skills/svg-animation/SKILL.md +9 -0
  253. package/.agent/skills/swiftui-expert/SKILL.md +9 -0
  254. package/.agent/skills/swiss-design/SKILL.md +8 -0
  255. package/.agent/skills/system-design-pro/SKILL.md +9 -0
  256. package/.agent/skills/systematic-debugging/SKILL.md +14 -0
  257. package/.agent/skills/tailwind-patterns/SKILL.md +9 -0
  258. package/.agent/skills/taste-skill/SKILL.md +9 -0
  259. package/.agent/skills/tdd-workflow/SKILL.md +9 -0
  260. package/.agent/skills/test-result-analyzer/SKILL.md +9 -0
  261. package/.agent/skills/testing-patterns/SKILL.md +8 -0
  262. package/.agent/skills/thermo-nuclear-code-quality-review/SKILL.md +11 -0
  263. package/.agent/skills/thinking-protocol/SKILL.md +10 -0
  264. package/.agent/skills/to-spring-or-not-to-spring/SKILL.md +9 -0
  265. package/.agent/skills/train-sentence-transformers/SKILL.md +10 -0
  266. package/.agent/skills/transformers-js/SKILL.md +8 -0
  267. package/.agent/skills/transitions-dev/SKILL.md +8 -0
  268. package/.agent/skills/trend-researcher/SKILL.md +9 -0
  269. package/.agent/skills/tribunal-instincts-memory/SKILL.md +11 -0
  270. package/.agent/skills/trl-training/SKILL.md +9 -0
  271. package/.agent/skills/typescript-advanced/SKILL.md +9 -0
  272. package/.agent/skills/typeset/SKILL.md +8 -0
  273. package/.agent/skills/ui-reasoning-engine/SKILL.md +9 -0
  274. package/.agent/skills/ui-skill-packs/SKILL.md +9 -0
  275. package/.agent/skills/ui-skills-root/SKILL.md +9 -0
  276. package/.agent/skills/ui-ux-pro-max/SKILL.md +9 -0
  277. package/.agent/skills/ui-ux-researcher/SKILL.md +8 -0
  278. package/.agent/skills/vector-search-pgvector/SKILL.md +10 -0
  279. package/.agent/skills/verification-before-completion/SKILL.md +9 -0
  280. package/.agent/skills/vue-expert/SKILL.md +9 -0
  281. package/.agent/skills/vulnerability-scanner/SKILL.md +9 -0
  282. package/.agent/skills/web-accessibility-auditor/SKILL.md +16 -0
  283. package/.agent/skills/web-design-guidelines/SKILL.md +9 -0
  284. package/.agent/skills/web-quality-audit/SKILL.md +10 -0
  285. package/.agent/skills/webapp-testing/SKILL.md +8 -0
  286. package/.agent/skills/webgpu-performance/SKILL.md +9 -0
  287. package/.agent/skills/whimsy-injector/SKILL.md +9 -0
  288. package/.agent/skills/workflow-optimizer/SKILL.md +9 -0
  289. package/.agent/skills/zero-trust-passkeys/SKILL.md +10 -0
  290. package/.agent/skills_inventory.json +502 -3167
  291. package/.agent/workflows/arch.md +96 -80
  292. package/.agent/workflows/skill-intelligence.md +216 -0
  293. package/.agents/skills/12-principles-of-animation/SKILL.md +9 -0
  294. package/.agents/skills/60fps-animation/SKILL.md +14 -0
  295. package/.agents/skills/accessible-animation/SKILL.md +9 -0
  296. package/.agents/skills/adapt/SKILL.md +8 -0
  297. package/.agents/skills/adr-generation/SKILL.md +9 -0
  298. package/.agents/skills/advanced-rag-pipelines/SKILL.md +9 -0
  299. package/.agents/skills/agent-organizer/SKILL.md +8 -0
  300. package/.agents/skills/agent-syscall-guidelines/SKILL.md +10 -0
  301. package/.agents/skills/agentic-patterns/SKILL.md +9 -0
  302. package/.agents/skills/agentic-workflows-2026/SKILL.md +8 -0
  303. package/.agents/skills/agentshield-security/SKILL.md +16 -0
  304. package/.agents/skills/ai-app-hardening/SKILL.md +7 -0
  305. package/.agents/skills/ai-prompt-injection-defense/SKILL.md +9 -0
  306. package/.agents/skills/animation-on-scroll/SKILL.md +9 -0
  307. package/.agents/skills/animation-systems/SKILL.md +8 -0
  308. package/.agents/skills/antfu-conventions/SKILL.md +9 -0
  309. package/.agents/skills/anti-slop-enforcement/SKILL.md +11 -0
  310. package/.agents/skills/api-patterns/SKILL.md +9 -0
  311. package/.agents/skills/api-security-auditor/SKILL.md +10 -0
  312. package/.agents/skills/app-builder/SKILL.md +8 -0
  313. package/.agents/skills/appflow-wireframe/SKILL.md +9 -0
  314. package/.agents/skills/apple-design/SKILL.md +8 -0
  315. package/.agents/skills/architecture/SKILL.md +8 -0
  316. package/.agents/skills/architecture-drift/SKILL.md +9 -0
  317. package/.agents/skills/architecture-intelligence/SKILL.md +17 -0
  318. package/.agents/skills/audit-and-fix/SKILL.md +8 -0
  319. package/.agents/skills/authentication-best-practices/SKILL.md +10 -0
  320. package/.agents/skills/autonomous-execution/SKILL.md +9 -0
  321. package/.agents/skills/backend-alembic/SKILL.md +16 -0
  322. package/.agents/skills/backend-architecture-auditor/SKILL.md +16 -0
  323. package/.agents/skills/backend-mongodb/SKILL.md +10 -0
  324. package/.agents/skills/backend-mysql/SKILL.md +16 -0
  325. package/.agents/skills/backend-performance-auditor/SKILL.md +10 -0
  326. package/.agents/skills/backend-postgresql/SKILL.md +10 -0
  327. package/.agents/skills/backend-redis/SKILL.md +10 -0
  328. package/.agents/skills/backend-security-expert/SKILL.md +10 -0
  329. package/.agents/skills/backend-sqlalchemy/SKILL.md +10 -0
  330. package/.agents/skills/backend-sqlite/SKILL.md +10 -0
  331. package/.agents/skills/backend-testing-auditor/SKILL.md +15 -0
  332. package/.agents/skills/baseline-ui/SKILL.md +8 -0
  333. package/.agents/skills/bash-linux/SKILL.md +9 -0
  334. package/.agents/skills/behavioral-modes/SKILL.md +9 -0
  335. package/.agents/skills/better-colors/SKILL.md +9 -0
  336. package/.agents/skills/better-typography/SKILL.md +9 -0
  337. package/.agents/skills/better-ui/SKILL.md +8 -0
  338. package/.agents/skills/bolder/SKILL.md +8 -0
  339. package/.agents/skills/brainstorming/SKILL.md +8 -0
  340. package/.agents/skills/browser-audit/SKILL.md +9 -0
  341. package/.agents/skills/browser-native-ai/SKILL.md +8 -0
  342. package/.agents/skills/build-primitive/SKILL.md +8 -0
  343. package/.agents/skills/building-native-ui/SKILL.md +7 -0
  344. package/.agents/skills/cicd-pro/SKILL.md +9 -0
  345. package/.agents/skills/clarify/SKILL.md +8 -0
  346. package/.agents/skills/clean-code/SKILL.md +8 -0
  347. package/.agents/skills/cloud-architect/SKILL.md +8 -0
  348. package/.agents/skills/cobejs/SKILL.md +8 -0
  349. package/.agents/skills/code-review-checklist/SKILL.md +9 -0
  350. package/.agents/skills/codebase-design/SKILL.md +14 -0
  351. package/.agents/skills/colorize/SKILL.md +8 -0
  352. package/.agents/skills/compact-landing/SKILL.md +9 -0
  353. package/.agents/skills/company-logos/SKILL.md +9 -0
  354. package/.agents/skills/config-validator/SKILL.md +9 -0
  355. package/.agents/skills/containerization-pro/SKILL.md +9 -0
  356. package/.agents/skills/context-engineering-pro/SKILL.md +10 -0
  357. package/.agents/skills/create-design-md/SKILL.md +7 -0
  358. package/.agents/skills/critique/SKILL.md +8 -0
  359. package/.agents/skills/csharp-developer/SKILL.md +9 -0
  360. package/.agents/skills/data-validation-schemas/SKILL.md +8 -0
  361. package/.agents/skills/database-design/SKILL.md +8 -0
  362. package/.agents/skills/delight/SKILL.md +8 -0
  363. package/.agents/skills/deployment-procedures/SKILL.md +9 -0
  364. package/.agents/skills/design-lab/SKILL.md +8 -0
  365. package/.agents/skills/devops-engineer/SKILL.md +9 -0
  366. package/.agents/skills/devops-incident-responder/SKILL.md +16 -0
  367. package/.agents/skills/diagnosing-bugs/SKILL.md +9 -0
  368. package/.agents/skills/distill/SKILL.md +8 -0
  369. package/.agents/skills/documentation-templates/SKILL.md +9 -0
  370. package/.agents/skills/domain-modeling/SKILL.md +9 -0
  371. package/.agents/skills/duckdb-analytical-sql/SKILL.md +10 -0
  372. package/.agents/skills/edge-ai-mobile/SKILL.md +8 -0
  373. package/.agents/skills/edge-computing/SKILL.md +9 -0
  374. package/.agents/skills/emil-design-eng/SKILL.md +9 -0
  375. package/.agents/skills/error-resilience/SKILL.md +8 -0
  376. package/.agents/skills/expo-router-v4/SKILL.md +9 -0
  377. package/.agents/skills/extract-design-system/SKILL.md +9 -0
  378. package/.agents/skills/fabel-protocol/SKILL.md +9 -0
  379. package/.agents/skills/failure-mode-analysis/SKILL.md +10 -0
  380. package/.agents/skills/fastapi-pro/SKILL.md +9 -0
  381. package/.agents/skills/fixing-accessibility/SKILL.md +9 -0
  382. package/.agents/skills/fixing-metadata/SKILL.md +9 -0
  383. package/.agents/skills/fixing-motion-performance/SKILL.md +9 -0
  384. package/.agents/skills/framer-motion-expert/SKILL.md +9 -0
  385. package/.agents/skills/frontend-design/SKILL.md +7 -0
  386. package/.agents/skills/frontend-security-expert/SKILL.md +9 -0
  387. package/.agents/skills/game-design-expert/SKILL.md +9 -0
  388. package/.agents/skills/game-engineering-expert/SKILL.md +16 -0
  389. package/.agents/skills/generative-ui-expert/SKILL.md +9 -0
  390. package/.agents/skills/geo-fundamentals/SKILL.md +9 -0
  391. package/.agents/skills/git-pro/SKILL.md +9 -0
  392. package/.agents/skills/github-operations/SKILL.md +9 -0
  393. package/.agents/skills/gpt-taste/SKILL.md +9 -0
  394. package/.agents/skills/graph-engineering/SKILL.md +16 -0
  395. package/.agents/skills/gsap-core/SKILL.md +9 -0
  396. package/.agents/skills/gsap-frameworks/SKILL.md +9 -0
  397. package/.agents/skills/gsap-performance/SKILL.md +9 -0
  398. package/.agents/skills/gsap-plugins/SKILL.md +9 -0
  399. package/.agents/skills/gsap-react/SKILL.md +9 -0
  400. package/.agents/skills/gsap-scrolltrigger/SKILL.md +9 -0
  401. package/.agents/skills/gsap-timeline/SKILL.md +9 -0
  402. package/.agents/skills/gsap-utils/SKILL.md +9 -0
  403. package/.agents/skills/harden/SKILL.md +8 -0
  404. package/.agents/skills/harness-protocol/SKILL.md +9 -0
  405. package/.agents/skills/hf-cli/SKILL.md +11 -0
  406. package/.agents/skills/hf-cloud-aws-context-discovery/SKILL.md +10 -0
  407. package/.agents/skills/hf-cloud-python-env-setup/SKILL.md +10 -0
  408. package/.agents/skills/hf-cloud-sagemaker-deployment-planner/SKILL.md +10 -0
  409. package/.agents/skills/hf-cloud-sagemaker-iam-preflight/SKILL.md +10 -0
  410. package/.agents/skills/hf-cloud-sagemaker-production-defaults/SKILL.md +10 -0
  411. package/.agents/skills/hf-cloud-serving-image-selection/SKILL.md +10 -0
  412. package/.agents/skills/hf-mem/SKILL.md +11 -0
  413. package/.agents/skills/huggingface-best/SKILL.md +9 -0
  414. package/.agents/skills/huggingface-community-evals/SKILL.md +11 -0
  415. package/.agents/skills/huggingface-datasets/SKILL.md +10 -0
  416. package/.agents/skills/huggingface-gradio/SKILL.md +10 -0
  417. package/.agents/skills/huggingface-llm-trainer/SKILL.md +10 -0
  418. package/.agents/skills/huggingface-local-models/SKILL.md +10 -0
  419. package/.agents/skills/huggingface-lora-space-builder/SKILL.md +11 -0
  420. package/.agents/skills/huggingface-paper-publisher/SKILL.md +11 -0
  421. package/.agents/skills/huggingface-papers/SKILL.md +11 -0
  422. package/.agents/skills/huggingface-spaces/SKILL.md +10 -0
  423. package/.agents/skills/huggingface-tool-builder/SKILL.md +11 -0
  424. package/.agents/skills/huggingface-trackio/SKILL.md +11 -0
  425. package/.agents/skills/huggingface-vision-trainer/SKILL.md +11 -0
  426. package/.agents/skills/huggingface-zerogpu/SKILL.md +11 -0
  427. package/.agents/skills/human-gate-negotiation/SKILL.md +11 -0
  428. package/.agents/skills/i18n-localization/SKILL.md +9 -0
  429. package/.agents/skills/impeccable/SKILL.md +8 -0
  430. package/.agents/skills/improve-codebase-architecture/SKILL.md +10 -0
  431. package/.agents/skills/improve-ui/SKILL.md +8 -0
  432. package/.agents/skills/intelligent-routing/SKILL.md +9 -0
  433. package/.agents/skills/knowledge-graph/SKILL.md +9 -0
  434. package/.agents/skills/landing-page/SKILL.md +9 -0
  435. package/.agents/skills/lint-and-validate/SKILL.md +9 -0
  436. package/.agents/skills/llm-engineering/SKILL.md +9 -0
  437. package/.agents/skills/local-first/SKILL.md +10 -0
  438. package/.agents/skills/lottie-animation/SKILL.md +9 -0
  439. package/.agents/skills/marquee-loop/SKILL.md +9 -0
  440. package/.agents/skills/masked-reveal/SKILL.md +9 -0
  441. package/.agents/skills/mcp-builder/SKILL.md +9 -0
  442. package/.agents/skills/micro-interaction/SKILL.md +9 -0
  443. package/.agents/skills/mobile-design/SKILL.md +7 -0
  444. package/.agents/skills/monorepo-management/SKILL.md +9 -0
  445. package/.agents/skills/morphing-icons/SKILL.md +9 -0
  446. package/.agents/skills/motion-engineering/SKILL.md +8 -0
  447. package/.agents/skills/nextjs-react-expert/SKILL.md +10 -0
  448. package/.agents/skills/nodejs-best-practices/SKILL.md +16 -0
  449. package/.agents/skills/observability/SKILL.md +8 -0
  450. package/.agents/skills/opentelemetry-observability/SKILL.md +9 -0
  451. package/.agents/skills/page-transition-animation/SKILL.md +10 -0
  452. package/.agents/skills/parallel-agents/SKILL.md +15 -0
  453. package/.agents/skills/performance-profiling/SKILL.md +9 -0
  454. package/.agents/skills/plan-writing/SKILL.md +8 -0
  455. package/.agents/skills/platform-engineer/SKILL.md +9 -0
  456. package/.agents/skills/platform-engineering-opentofu/SKILL.md +10 -0
  457. package/.agents/skills/playwright-ai-e2e/SKILL.md +9 -0
  458. package/.agents/skills/playwright-best-practices/SKILL.md +16 -0
  459. package/.agents/skills/polish/SKILL.md +8 -0
  460. package/.agents/skills/powershell-windows/SKILL.md +9 -0
  461. package/.agents/skills/pricing-page/SKILL.md +9 -0
  462. package/.agents/skills/product-aware-heuristics/SKILL.md +10 -0
  463. package/.agents/skills/progressive-blur/SKILL.md +9 -0
  464. package/.agents/skills/project-idioms/SKILL.md +8 -0
  465. package/.agents/skills/property-based-testing/SKILL.md +9 -0
  466. package/.agents/skills/python-patterns/SKILL.md +9 -0
  467. package/.agents/skills/python-pro/SKILL.md +9 -0
  468. package/.agents/skills/quieter/SKILL.md +8 -0
  469. package/.agents/skills/react-doctor/SKILL.md +9 -0
  470. package/.agents/skills/react-specialist/SKILL.md +9 -0
  471. package/.agents/skills/readme-builder/SKILL.md +9 -0
  472. package/.agents/skills/realtime-patterns/SKILL.md +9 -0
  473. package/.agents/skills/red-team-tactics/SKILL.md +16 -0
  474. package/.agents/skills/redesign-skill/SKILL.md +9 -0
  475. package/.agents/skills/review-animations/SKILL.md +8 -0
  476. package/.agents/skills/rust-pro/SKILL.md +9 -0
  477. package/.agents/skills/semantic-filesystem-navigation/SKILL.md +11 -0
  478. package/.agents/skills/seo-fundamentals/SKILL.md +9 -0
  479. package/.agents/skills/server-management/SKILL.md +8 -0
  480. package/.agents/skills/session-log-interrogation/SKILL.md +11 -0
  481. package/.agents/skills/shadcn-ui-expert/SKILL.md +9 -0
  482. package/.agents/skills/shape/SKILL.md +8 -0
  483. package/.agents/skills/skill-creator/SKILL.md +9 -0
  484. package/.agents/skills/soft-skill/SKILL.md +9 -0
  485. package/.agents/skills/sounds-on-the-web/SKILL.md +9 -0
  486. package/.agents/skills/sql-pro/SKILL.md +9 -0
  487. package/.agents/skills/subagent-driven-development/SKILL.md +11 -0
  488. package/.agents/skills/supabase-postgres-best-practices/SKILL.md +17 -0
  489. package/.agents/skills/svg-animation/SKILL.md +9 -0
  490. package/.agents/skills/swiftui-expert/SKILL.md +9 -0
  491. package/.agents/skills/swiss-design/SKILL.md +8 -0
  492. package/.agents/skills/system-design-pro/SKILL.md +9 -0
  493. package/.agents/skills/systematic-debugging/SKILL.md +14 -0
  494. package/.agents/skills/tailwind-patterns/SKILL.md +9 -0
  495. package/.agents/skills/taste-skill/SKILL.md +9 -0
  496. package/.agents/skills/tdd-workflow/SKILL.md +9 -0
  497. package/.agents/skills/test-result-analyzer/SKILL.md +9 -0
  498. package/.agents/skills/testing-patterns/SKILL.md +8 -0
  499. package/.agents/skills/thermo-nuclear-code-quality-review/SKILL.md +11 -0
  500. package/.agents/skills/thinking-protocol/SKILL.md +10 -0
  501. package/.agents/skills/to-spring-or-not-to-spring/SKILL.md +9 -0
  502. package/.agents/skills/train-sentence-transformers/SKILL.md +10 -0
  503. package/.agents/skills/transformers-js/SKILL.md +8 -0
  504. package/.agents/skills/transitions-dev/SKILL.md +8 -0
  505. package/.agents/skills/trend-researcher/SKILL.md +9 -0
  506. package/.agents/skills/tribunal-instincts-memory/SKILL.md +11 -0
  507. package/.agents/skills/trl-training/SKILL.md +9 -0
  508. package/.agents/skills/typescript-advanced/SKILL.md +9 -0
  509. package/.agents/skills/typeset/SKILL.md +8 -0
  510. package/.agents/skills/ui-reasoning-engine/SKILL.md +9 -0
  511. package/.agents/skills/ui-skill-packs/SKILL.md +9 -0
  512. package/.agents/skills/ui-skills-root/SKILL.md +9 -0
  513. package/.agents/skills/ui-ux-pro-max/SKILL.md +9 -0
  514. package/.agents/skills/ui-ux-researcher/SKILL.md +8 -0
  515. package/.agents/skills/vector-search-pgvector/SKILL.md +10 -0
  516. package/.agents/skills/verification-before-completion/SKILL.md +9 -0
  517. package/.agents/skills/vue-expert/SKILL.md +9 -0
  518. package/.agents/skills/vulnerability-scanner/SKILL.md +9 -0
  519. package/.agents/skills/web-accessibility-auditor/SKILL.md +16 -0
  520. package/.agents/skills/web-design-guidelines/SKILL.md +9 -0
  521. package/.agents/skills/web-quality-audit/SKILL.md +10 -0
  522. package/.agents/skills/webapp-testing/SKILL.md +8 -0
  523. package/.agents/skills/webgpu-performance/SKILL.md +9 -0
  524. package/.agents/skills/whimsy-injector/SKILL.md +9 -0
  525. package/.agents/skills/workflow-optimizer/SKILL.md +9 -0
  526. package/.agents/skills/zero-trust-passkeys/SKILL.md +10 -0
  527. package/CONTRIBUTING.md +2 -2
  528. package/README.md +25 -25
  529. package/bin/adapter-install.js +1 -1
  530. package/bin/mcp-server.js +249 -0
  531. package/package.json +11 -8
  532. package/plugins/core-plugin.json +1 -1
  533. package/plugins/gemini/extension.json +1 -1
  534. package/skills/12-principles-of-animation/SKILL.md +9 -0
  535. package/skills/60fps-animation/SKILL.md +14 -0
  536. package/skills/accessible-animation/SKILL.md +9 -0
  537. package/skills/adapt/SKILL.md +8 -0
  538. package/skills/adr-generation/SKILL.md +9 -0
  539. package/skills/advanced-rag-pipelines/SKILL.md +9 -0
  540. package/skills/agent-organizer/SKILL.md +8 -0
  541. package/skills/agent-syscall-guidelines/SKILL.md +10 -0
  542. package/skills/agentic-patterns/SKILL.md +9 -0
  543. package/skills/agentic-workflows-2026/SKILL.md +8 -0
  544. package/skills/agentshield-security/SKILL.md +16 -0
  545. package/skills/ai-app-hardening/SKILL.md +7 -0
  546. package/skills/ai-prompt-injection-defense/SKILL.md +9 -0
  547. package/skills/animation-on-scroll/SKILL.md +9 -0
  548. package/skills/animation-systems/SKILL.md +8 -0
  549. package/skills/antfu-conventions/SKILL.md +9 -0
  550. package/skills/anti-slop-enforcement/SKILL.md +11 -0
  551. package/skills/api-patterns/SKILL.md +9 -0
  552. package/skills/api-security-auditor/SKILL.md +10 -0
  553. package/skills/app-builder/SKILL.md +8 -0
  554. package/skills/appflow-wireframe/SKILL.md +9 -0
  555. package/skills/apple-design/SKILL.md +8 -0
  556. package/skills/architecture/SKILL.md +8 -0
  557. package/skills/architecture-drift/SKILL.md +9 -0
  558. package/skills/architecture-intelligence/SKILL.md +17 -0
  559. package/skills/audit-and-fix/SKILL.md +8 -0
  560. package/skills/authentication-best-practices/SKILL.md +10 -0
  561. package/skills/autonomous-execution/SKILL.md +9 -0
  562. package/skills/backend-alembic/SKILL.md +16 -0
  563. package/skills/backend-architecture-auditor/SKILL.md +16 -0
  564. package/skills/backend-mongodb/SKILL.md +10 -0
  565. package/skills/backend-mysql/SKILL.md +16 -0
  566. package/skills/backend-performance-auditor/SKILL.md +10 -0
  567. package/skills/backend-postgresql/SKILL.md +10 -0
  568. package/skills/backend-redis/SKILL.md +10 -0
  569. package/skills/backend-security-expert/SKILL.md +10 -0
  570. package/skills/backend-sqlalchemy/SKILL.md +10 -0
  571. package/skills/backend-sqlite/SKILL.md +10 -0
  572. package/skills/backend-testing-auditor/SKILL.md +15 -0
  573. package/skills/baseline-ui/SKILL.md +8 -0
  574. package/skills/bash-linux/SKILL.md +9 -0
  575. package/skills/behavioral-modes/SKILL.md +9 -0
  576. package/skills/better-colors/SKILL.md +9 -0
  577. package/skills/better-typography/SKILL.md +9 -0
  578. package/skills/better-ui/SKILL.md +8 -0
  579. package/skills/bolder/SKILL.md +8 -0
  580. package/skills/brainstorming/SKILL.md +8 -0
  581. package/skills/browser-audit/SKILL.md +9 -0
  582. package/skills/browser-native-ai/SKILL.md +8 -0
  583. package/skills/build-primitive/SKILL.md +8 -0
  584. package/skills/building-native-ui/SKILL.md +7 -0
  585. package/skills/cicd-pro/SKILL.md +9 -0
  586. package/skills/clarify/SKILL.md +8 -0
  587. package/skills/clean-code/SKILL.md +8 -0
  588. package/skills/cloud-architect/SKILL.md +8 -0
  589. package/skills/cobejs/SKILL.md +8 -0
  590. package/skills/code-review-checklist/SKILL.md +9 -0
  591. package/skills/codebase-design/SKILL.md +14 -0
  592. package/skills/colorize/SKILL.md +8 -0
  593. package/skills/compact-landing/SKILL.md +9 -0
  594. package/skills/company-logos/SKILL.md +9 -0
  595. package/skills/config-validator/SKILL.md +9 -0
  596. package/skills/containerization-pro/SKILL.md +9 -0
  597. package/skills/context-engineering-pro/SKILL.md +10 -0
  598. package/skills/create-design-md/SKILL.md +7 -0
  599. package/skills/critique/SKILL.md +8 -0
  600. package/skills/csharp-developer/SKILL.md +9 -0
  601. package/skills/data-validation-schemas/SKILL.md +8 -0
  602. package/skills/database-design/SKILL.md +8 -0
  603. package/skills/delight/SKILL.md +8 -0
  604. package/skills/deployment-procedures/SKILL.md +9 -0
  605. package/skills/design-lab/SKILL.md +8 -0
  606. package/skills/devops-engineer/SKILL.md +9 -0
  607. package/skills/devops-incident-responder/SKILL.md +16 -0
  608. package/skills/diagnosing-bugs/SKILL.md +9 -0
  609. package/skills/distill/SKILL.md +8 -0
  610. package/skills/documentation-templates/SKILL.md +9 -0
  611. package/skills/domain-modeling/SKILL.md +9 -0
  612. package/skills/duckdb-analytical-sql/SKILL.md +10 -0
  613. package/skills/edge-ai-mobile/SKILL.md +8 -0
  614. package/skills/edge-computing/SKILL.md +9 -0
  615. package/skills/emil-design-eng/SKILL.md +9 -0
  616. package/skills/error-resilience/SKILL.md +8 -0
  617. package/skills/expo-router-v4/SKILL.md +9 -0
  618. package/skills/extract-design-system/SKILL.md +9 -0
  619. package/skills/fabel-protocol/SKILL.md +9 -0
  620. package/skills/failure-mode-analysis/SKILL.md +10 -0
  621. package/skills/fastapi-pro/SKILL.md +9 -0
  622. package/skills/fixing-accessibility/SKILL.md +9 -0
  623. package/skills/fixing-metadata/SKILL.md +9 -0
  624. package/skills/fixing-motion-performance/SKILL.md +9 -0
  625. package/skills/framer-motion-expert/SKILL.md +9 -0
  626. package/skills/frontend-design/SKILL.md +7 -0
  627. package/skills/frontend-security-expert/SKILL.md +9 -0
  628. package/skills/game-design-expert/SKILL.md +9 -0
  629. package/skills/game-engineering-expert/SKILL.md +16 -0
  630. package/skills/generative-ui-expert/SKILL.md +9 -0
  631. package/skills/geo-fundamentals/SKILL.md +9 -0
  632. package/skills/git-pro/SKILL.md +9 -0
  633. package/skills/github-operations/SKILL.md +9 -0
  634. package/skills/gpt-taste/SKILL.md +9 -0
  635. package/skills/graph-engineering/SKILL.md +16 -0
  636. package/skills/gsap-core/SKILL.md +9 -0
  637. package/skills/gsap-frameworks/SKILL.md +9 -0
  638. package/skills/gsap-performance/SKILL.md +9 -0
  639. package/skills/gsap-plugins/SKILL.md +9 -0
  640. package/skills/gsap-react/SKILL.md +9 -0
  641. package/skills/gsap-scrolltrigger/SKILL.md +9 -0
  642. package/skills/gsap-timeline/SKILL.md +9 -0
  643. package/skills/gsap-utils/SKILL.md +9 -0
  644. package/skills/harden/SKILL.md +8 -0
  645. package/skills/harness-protocol/SKILL.md +9 -0
  646. package/skills/hf-cli/SKILL.md +11 -0
  647. package/skills/hf-cloud-aws-context-discovery/SKILL.md +10 -0
  648. package/skills/hf-cloud-python-env-setup/SKILL.md +10 -0
  649. package/skills/hf-cloud-sagemaker-deployment-planner/SKILL.md +10 -0
  650. package/skills/hf-cloud-sagemaker-iam-preflight/SKILL.md +10 -0
  651. package/skills/hf-cloud-sagemaker-production-defaults/SKILL.md +10 -0
  652. package/skills/hf-cloud-serving-image-selection/SKILL.md +10 -0
  653. package/skills/hf-mem/SKILL.md +11 -0
  654. package/skills/huggingface-best/SKILL.md +9 -0
  655. package/skills/huggingface-community-evals/SKILL.md +11 -0
  656. package/skills/huggingface-datasets/SKILL.md +10 -0
  657. package/skills/huggingface-gradio/SKILL.md +10 -0
  658. package/skills/huggingface-llm-trainer/SKILL.md +10 -0
  659. package/skills/huggingface-local-models/SKILL.md +10 -0
  660. package/skills/huggingface-lora-space-builder/SKILL.md +11 -0
  661. package/skills/huggingface-paper-publisher/SKILL.md +11 -0
  662. package/skills/huggingface-papers/SKILL.md +11 -0
  663. package/skills/huggingface-spaces/SKILL.md +10 -0
  664. package/skills/huggingface-tool-builder/SKILL.md +11 -0
  665. package/skills/huggingface-trackio/SKILL.md +11 -0
  666. package/skills/huggingface-vision-trainer/SKILL.md +11 -0
  667. package/skills/huggingface-zerogpu/SKILL.md +11 -0
  668. package/skills/human-gate-negotiation/SKILL.md +11 -0
  669. package/skills/i18n-localization/SKILL.md +9 -0
  670. package/skills/impeccable/SKILL.md +8 -0
  671. package/skills/improve-codebase-architecture/SKILL.md +10 -0
  672. package/skills/improve-ui/SKILL.md +8 -0
  673. package/skills/intelligent-routing/SKILL.md +9 -0
  674. package/skills/knowledge-graph/SKILL.md +9 -0
  675. package/skills/landing-page/SKILL.md +9 -0
  676. package/skills/lint-and-validate/SKILL.md +9 -0
  677. package/skills/llm-engineering/SKILL.md +9 -0
  678. package/skills/local-first/SKILL.md +10 -0
  679. package/skills/lottie-animation/SKILL.md +9 -0
  680. package/skills/marquee-loop/SKILL.md +9 -0
  681. package/skills/masked-reveal/SKILL.md +9 -0
  682. package/skills/mcp-builder/SKILL.md +9 -0
  683. package/skills/micro-interaction/SKILL.md +9 -0
  684. package/skills/mobile-design/SKILL.md +7 -0
  685. package/skills/monorepo-management/SKILL.md +9 -0
  686. package/skills/morphing-icons/SKILL.md +9 -0
  687. package/skills/motion-engineering/SKILL.md +8 -0
  688. package/skills/nextjs-react-expert/SKILL.md +10 -0
  689. package/skills/nodejs-best-practices/SKILL.md +16 -0
  690. package/skills/observability/SKILL.md +8 -0
  691. package/skills/opentelemetry-observability/SKILL.md +9 -0
  692. package/skills/page-transition-animation/SKILL.md +10 -0
  693. package/skills/parallel-agents/SKILL.md +15 -0
  694. package/skills/performance-profiling/SKILL.md +9 -0
  695. package/skills/plan-writing/SKILL.md +8 -0
  696. package/skills/platform-engineer/SKILL.md +9 -0
  697. package/skills/platform-engineering-opentofu/SKILL.md +10 -0
  698. package/skills/playwright-ai-e2e/SKILL.md +9 -0
  699. package/skills/playwright-best-practices/SKILL.md +16 -0
  700. package/skills/polish/SKILL.md +8 -0
  701. package/skills/powershell-windows/SKILL.md +9 -0
  702. package/skills/pricing-page/SKILL.md +9 -0
  703. package/skills/product-aware-heuristics/SKILL.md +10 -0
  704. package/skills/progressive-blur/SKILL.md +9 -0
  705. package/skills/project-idioms/SKILL.md +8 -0
  706. package/skills/property-based-testing/SKILL.md +9 -0
  707. package/skills/python-patterns/SKILL.md +9 -0
  708. package/skills/python-pro/SKILL.md +9 -0
  709. package/skills/quieter/SKILL.md +8 -0
  710. package/skills/react-doctor/SKILL.md +9 -0
  711. package/skills/react-specialist/SKILL.md +9 -0
  712. package/skills/readme-builder/SKILL.md +9 -0
  713. package/skills/realtime-patterns/SKILL.md +9 -0
  714. package/skills/red-team-tactics/SKILL.md +16 -0
  715. package/skills/redesign-skill/SKILL.md +9 -0
  716. package/skills/review-animations/SKILL.md +8 -0
  717. package/skills/rust-pro/SKILL.md +9 -0
  718. package/skills/semantic-filesystem-navigation/SKILL.md +11 -0
  719. package/skills/seo-fundamentals/SKILL.md +9 -0
  720. package/skills/server-management/SKILL.md +8 -0
  721. package/skills/session-log-interrogation/SKILL.md +11 -0
  722. package/skills/shadcn-ui-expert/SKILL.md +9 -0
  723. package/skills/shape/SKILL.md +8 -0
  724. package/skills/skill-creator/SKILL.md +9 -0
  725. package/skills/soft-skill/SKILL.md +9 -0
  726. package/skills/sounds-on-the-web/SKILL.md +9 -0
  727. package/skills/sql-pro/SKILL.md +9 -0
  728. package/skills/subagent-driven-development/SKILL.md +11 -0
  729. package/skills/supabase-postgres-best-practices/SKILL.md +17 -0
  730. package/skills/svg-animation/SKILL.md +9 -0
  731. package/skills/swiftui-expert/SKILL.md +9 -0
  732. package/skills/swiss-design/SKILL.md +8 -0
  733. package/skills/system-design-pro/SKILL.md +9 -0
  734. package/skills/systematic-debugging/SKILL.md +14 -0
  735. package/skills/tailwind-patterns/SKILL.md +9 -0
  736. package/skills/taste-skill/SKILL.md +9 -0
  737. package/skills/tdd-workflow/SKILL.md +9 -0
  738. package/skills/test-result-analyzer/SKILL.md +9 -0
  739. package/skills/testing-patterns/SKILL.md +8 -0
  740. package/skills/thermo-nuclear-code-quality-review/SKILL.md +11 -0
  741. package/skills/thinking-protocol/SKILL.md +10 -0
  742. package/skills/to-spring-or-not-to-spring/SKILL.md +9 -0
  743. package/skills/train-sentence-transformers/SKILL.md +10 -0
  744. package/skills/transformers-js/SKILL.md +8 -0
  745. package/skills/transitions-dev/SKILL.md +8 -0
  746. package/skills/trend-researcher/SKILL.md +9 -0
  747. package/skills/tribunal-instincts-memory/SKILL.md +11 -0
  748. package/skills/trl-training/SKILL.md +9 -0
  749. package/skills/typescript-advanced/SKILL.md +9 -0
  750. package/skills/typeset/SKILL.md +8 -0
  751. package/skills/ui-reasoning-engine/SKILL.md +9 -0
  752. package/skills/ui-skill-packs/SKILL.md +9 -0
  753. package/skills/ui-skills-root/SKILL.md +9 -0
  754. package/skills/ui-ux-pro-max/SKILL.md +9 -0
  755. package/skills/ui-ux-researcher/SKILL.md +8 -0
  756. package/skills/vector-search-pgvector/SKILL.md +10 -0
  757. package/skills/verification-before-completion/SKILL.md +9 -0
  758. package/skills/vue-expert/SKILL.md +9 -0
  759. package/skills/vulnerability-scanner/SKILL.md +9 -0
  760. package/skills/web-accessibility-auditor/SKILL.md +16 -0
  761. package/skills/web-design-guidelines/SKILL.md +9 -0
  762. package/skills/web-quality-audit/SKILL.md +10 -0
  763. package/skills/webapp-testing/SKILL.md +8 -0
  764. package/skills/webgpu-performance/SKILL.md +9 -0
  765. package/skills/whimsy-injector/SKILL.md +9 -0
  766. package/skills/workflow-optimizer/SKILL.md +9 -0
  767. package/skills/zero-trust-passkeys/SKILL.md +10 -0
  768. package/src/browser/index.js +2 -1
  769. package/src/browser/launcher.js +41 -1
  770. package/src/cli.js +21 -1
  771. package/src/commands/arch.js +261 -172
  772. package/src/commands/context.js +27 -8
  773. package/src/commands/init.js +538 -462
  774. package/src/commands/intelligence.js +86 -0
  775. package/src/commands/learn.js +21 -6
  776. package/src/commands/memory.js +10 -1
  777. package/src/commands/native.js +12 -3
  778. package/src/commands/review.js +235 -1
  779. package/src/commands/skill-intelligence.js +1165 -0
  780. package/src/commands/system1.js +562 -312
  781. package/src/context/ranker.js +337 -339
  782. package/src/evaluation/evaluation_runner.js +207 -0
  783. package/src/evaluation/scenario_registry.js +82 -0
  784. package/src/evolution/engine.js +296 -295
  785. package/src/execution/agent_correction_engine.js +76 -0
  786. package/src/execution/controlled_write_service.js +301 -0
  787. package/src/execution/correction_run_engine.js +234 -0
  788. package/src/execution/correction_verifier.js +85 -0
  789. package/src/execution/evidence_aggregator.js +54 -0
  790. package/src/execution/finding_diff_engine.js +59 -0
  791. package/src/execution/index.js +42 -0
  792. package/src/execution/prompt_isolator.js +145 -0
  793. package/src/execution/provider_adapter.js +495 -0
  794. package/src/execution/resolution_certificate.js +53 -0
  795. package/src/execution/resolution_policy.js +70 -0
  796. package/src/execution/review_executor.js +335 -0
  797. package/src/execution/reviewer_registry.js +137 -0
  798. package/src/execution/schemas.js +298 -0
  799. package/src/execution/transaction_manager.js +237 -0
  800. package/src/execution/validation_runner.js +174 -0
  801. package/src/execution/verdict_aggregator.js +181 -0
  802. package/src/execution/write_policy_engine.js +95 -0
  803. package/src/intelligence/adaptive_correction.js +72 -0
  804. package/src/intelligence/adaptive_reviewer_orchestrator.js +123 -0
  805. package/src/intelligence/case_indexer.js +166 -0
  806. package/src/intelligence/case_memory.js +149 -0
  807. package/src/intelligence/case_similarity.js +86 -0
  808. package/src/intelligence/cbr_engine.js +90 -0
  809. package/src/intelligence/evidence_optimization.js +106 -0
  810. package/src/intelligence/failure_intelligence.js +95 -0
  811. package/src/intelligence/governance_drift_detector.js +75 -0
  812. package/src/intelligence/governance_simulator.js +115 -0
  813. package/src/intelligence/human_intelligence.js +46 -0
  814. package/src/intelligence/mcp_tools.js +87 -0
  815. package/src/intelligence/reviewer_performance.js +94 -0
  816. package/src/intelligence/risk_prediction_engine.js +92 -0
  817. package/src/intelligence/token_intelligence.js +73 -0
  818. package/src/synthesis/claim_check_separator.js +294 -271
  819. package/src/system1/browser_intelligence.js +300 -0
  820. package/src/system1/constants.js +49 -0
  821. package/src/system1/decision_engine.js +498 -0
  822. package/src/system1/evidence_engine.js +602 -0
  823. package/src/system1/evolution_pipeline.js +581 -0
  824. package/src/system1/index.d.ts +114 -0
  825. package/src/system1/index.js +102 -0
  826. package/src/system1/reviewer_orchestrator.js +477 -0
  827. package/src/tui/banner.js +26 -47
  828. package/src/tui/index.js +4 -0
  829. package/src/tui/panel.js +55 -0
  830. package/src/tui/progress.js +42 -0
  831. package/src/tui/reviewer-grid.js +9 -10
  832. package/src/tui/theme.js +59 -16
  833. package/src/tui/tree.js +57 -29
  834. package/src/tui/wizard.js +22 -18
  835. package/src/utils/fs.js +27 -0
  836. package/.agent/skills/local-first-architecture/SKILL.md +0 -123
@@ -1,462 +1,538 @@
1
- 'use strict';
2
- const __importDefault =
3
- (this && this.__importDefault) ||
4
- function (mod) {
5
- return mod && mod.__esModule ? mod : { default: mod };
6
- };
7
- Object.defineProperty(exports, '__esModule', { value: true });
8
- exports.cmdInit = cmdInit;
9
- exports.generateIDEBridges = generateIDEBridges;
10
- const fs_1 = __importDefault(require('fs'));
11
- const path_1 = __importDefault(require('path'));
12
- const logger_1 = require('../utils/logger');
13
- const fs_2 = require('../utils/fs');
14
- const helpers_1 = require('../utils/helpers');
15
- const hasher_1 = require('../utils/hasher');
16
- const { ActionTree } = require('../tui');
17
- // Core agents to install in --minimal mode
18
- const CORE_AGENTS = new Set([
19
- 'backend-specialist.md',
20
- 'frontend-specialist.md',
21
- 'database-architect.md',
22
- 'debugger.md',
23
- 'security-auditor.md',
24
- 'logic-reviewer.md',
25
- 'dependency-reviewer.md',
26
- 'type-safety-reviewer.md',
27
- 'performance-reviewer.md',
28
- 'orchestrator.md',
29
- 'explorer-agent.md',
30
- 'project-planner.md',
31
- 'test-engineer.md',
32
- 'ui-ux-auditor.md',
33
- 'ui-visual-auditor.md',
34
- 'accessibility-reviewer.md',
35
- 'ux-reviewer.md',
36
- 'visual-reviewer.md',
37
- 'interaction-reviewer.md',
38
- 'anti-pattern-reviewer.md',
39
- 'product-reviewer.md',
40
- ]);
41
- // Core skills to install in --minimal mode
42
- const CORE_SKILLS = new Set([
43
- 'clean-code',
44
- 'architecture',
45
- 'testing-patterns',
46
- 'systematic-debugging',
47
- 'frontend-design',
48
- 'database-design',
49
- 'api-patterns',
50
- 'nodejs-best-practices',
51
- 'vulnerability-scanner',
52
- 'typescript-advanced',
53
- 'python-pro',
54
- 'nextjs-react-expert',
55
- 'react-specialist',
56
- 'performance-profiling',
57
- 'lint-and-validate',
58
- 'ui-ux-pro-max',
59
- 'ui-reasoning-engine',
60
- 'product-aware-heuristics',
61
- 'web-design-guidelines',
62
- ]);
63
- async function cmdInit(flags, quiet = false) {
64
- const agentSrc = (0, helpers_1.getKitAgent)();
65
- const targetDir = flags.path ? path_1.default.resolve(flags.path) : process.cwd();
66
- const agentDest = path_1.default.join(targetDir, '.agent');
67
- const dryRun = flags.dryRun || false;
68
- const pkgStr = fs_1.default.readFileSync(
69
- path_1.default.resolve(__dirname, '../../package.json'),
70
- 'utf8',
71
- );
72
- const pkg = JSON.parse(pkgStr);
73
- // ── Self-install guard ──────────────────────────────────
74
- if ((0, fs_2.isSelfInstall)(targetDir, pkg.name, path_1.default.resolve(__dirname, '../..'))) {
75
- (0, logger_1.err)('Cannot run init/update inside the tribunal-kit package itself.');
76
- (0, logger_1.err)(`Target: ${targetDir}`);
77
- (0, logger_1.err)(`Package: ${path_1.default.resolve(__dirname, '../..')}`);
78
- console.log();
79
- (0, logger_1.dim)('This command is designed to install .agent/ into OTHER projects.');
80
- (0, logger_1.dim)('Run it from the root of the project you want to set up:');
81
- (0, logger_1.dim)(' cd /path/to/your-project');
82
- (0, logger_1.dim)(' npx tribunal-kit init');
83
- console.log();
84
- process.exit(1);
85
- }
86
- // ────────────────────────────────────────────────────────
87
- let diff = null;
88
- let incremental = false;
89
-
90
- if (!dryRun && fs_1.default.existsSync(agentDest) && flags.force) {
91
- const oldManifest = (0, hasher_1.readManifest)(agentDest);
92
- if (oldManifest) {
93
- const newManifest = await (0, hasher_1.generateManifest)(agentSrc);
94
- diff = (0, hasher_1.diffManifests)(oldManifest, newManifest);
95
- incremental = true;
96
-
97
- const addCount = diff.added.length;
98
- const changeCount = diff.changed.length;
99
- const removeCount = diff.removed.length;
100
-
101
- (0, logger_1.log)(
102
- ` ${(0, logger_1.c)('cyan', '↻')} ${(0, logger_1.bold)('Performing incremental update...')}`,
103
- );
104
-
105
- const addedPart = `${(0, logger_1.c)('green', `[+ ${addCount}]`)} added`;
106
- const changedPart = `${(0, logger_1.c)('yellow', `[~ ${changeCount}]`)} changed`;
107
- const removedPart = `${(0, logger_1.c)('red', `[- ${removeCount}]`)} removed`;
108
- (0, logger_1.log)(` ${addedPart} ${changedPart} ${removedPart}`);
109
-
110
- const totalChanges = addCount + changeCount + removeCount;
111
- if (totalChanges > 0) {
112
- const maxBarWidth = 30;
113
- const addPct = Math.round((addCount / totalChanges) * maxBarWidth);
114
- const changePct = Math.round((changeCount / totalChanges) * maxBarWidth);
115
- const removePct = Math.max(0, maxBarWidth - addPct - changePct);
116
-
117
- const bar =
118
- (0, logger_1.c)('green', '█'.repeat(addPct)) +
119
- (0, logger_1.c)('yellow', '█'.repeat(changePct)) +
120
- (0, logger_1.c)('red', '█'.repeat(removePct));
121
-
122
- (0, logger_1.log)(` Syncing: [${bar}] ${totalChanges} files`);
123
- }
124
-
125
- // Backup ONLY changed or removed files
126
- const toBackup = [...diff.changed, ...diff.removed];
127
- if (toBackup.length > 0) {
128
- const backupDir = path_1.default.join(agentDest, '.backups', `backup-${Date.now()}`);
129
- fs_1.default.mkdirSync(backupDir, { recursive: true });
130
- let backedUpCount = 0;
131
- for (const file of toBackup) {
132
- const srcPath = path_1.default.join(agentDest, file);
133
- const destPath = path_1.default.join(backupDir, file);
134
- if (fs_1.default.existsSync(srcPath)) {
135
- fs_1.default.mkdirSync(path_1.default.dirname(destPath), { recursive: true });
136
- fs_1.default.copyFileSync(srcPath, destPath);
137
- backedUpCount++;
138
- }
139
- }
140
- (0, logger_1.log)(
141
- ` ${(0, logger_1.c)('gray', '✦')} Backed up ${backedUpCount} modified/removed files ${(0, logger_1.c)('gray', '→')} ${(0, logger_1.c)('gray', '.agent/.backups/')}`,
142
- );
143
- }
144
-
145
- // Remove removed files
146
- for (const file of diff.removed) {
147
- const target = path_1.default.join(agentDest, file);
148
- if (fs_1.default.existsSync(target)) {
149
- fs_1.default.rmSync(target);
150
- }
151
- }
152
- } else {
153
- // Legacy full backup
154
- const backupDir = path_1.default.join(agentDest, '.backups', `backup-${Date.now()}`);
155
- fs_1.default.mkdirSync(backupDir, { recursive: true });
156
- const subdirs = ['agents', 'workflows', 'skills', 'scripts', '.shared', 'rules'];
157
- for (const sub of subdirs) {
158
- const subPath = path_1.default.join(agentDest, sub);
159
- if (fs_1.default.existsSync(subPath)) {
160
- await (0, fs_2.copyDir)(subPath, path_1.default.join(backupDir, sub), false);
161
- await fs_1.default.promises.rm(subPath, { recursive: true, force: true });
162
- }
163
- }
164
- (0, logger_1.log)(
165
- ` ${(0, logger_1.c)('gray', '✦')} Backed up existing configurations ${(0, logger_1.c)('gray', '→')} ${(0, logger_1.c)('gray', '.agent/.backups/')}`,
166
- );
167
- }
168
- }
169
- // ────────────────────────────────────────────────────────
170
- (0, helpers_1.banner)(quiet);
171
- if (dryRun) {
172
- (0, logger_1.log)((0, logger_1.colorize)('yellow', ' DRY RUN — no files will be written'));
173
- console.log();
174
- }
175
- // Check target exists
176
- if (!fs_1.default.existsSync(targetDir)) {
177
- (0, logger_1.err)(`Target directory not found: ${targetDir}`);
178
- process.exit(1);
179
- }
180
- // Check if .agent already exists
181
- if (fs_1.default.existsSync(agentDest) && !flags.force) {
182
- (0, logger_1.warn)('.agent/ already exists in this project.');
183
- (0, logger_1.log)(
184
- ` ${(0, logger_1.c)('gray', '▸')} To refresh or update it, run: ${(0, logger_1.colorize)('white', 'tribunal-kit init --force')}`,
185
- );
186
- (0, logger_1.log)(
187
- ` ${(0, logger_1.c)('gray', '▸')} Or check status with: ${(0, logger_1.colorize)('cyan', 'tribunal-kit status')}`,
188
- );
189
- console.log();
190
- process.exit(0);
191
- }
192
- // Ensure history dirs exist (Case Law + Skill Evolution)
193
- if (!dryRun) {
194
- const caseDir = path_1.default.join(agentDest, 'history', 'case-law', 'cases');
195
- const evoDir = path_1.default.join(agentDest, 'history', 'skill-evolution');
196
- fs_1.default.mkdirSync(caseDir, { recursive: true });
197
- fs_1.default.mkdirSync(evoDir, { recursive: true });
198
- const gkCase = path_1.default.join(caseDir, '.gitkeep');
199
- const gkEvo = path_1.default.join(evoDir, '.gitkeep');
200
- if (!fs_1.default.existsSync(gkCase)) fs_1.default.writeFileSync(gkCase, '');
201
- if (!fs_1.default.existsSync(gkEvo)) fs_1.default.writeFileSync(gkEvo, '');
202
- }
203
- // Count what we're installing
204
- const isMinimal = flags.minimal || false;
205
- if (isMinimal) {
206
- (0, logger_1.log)(
207
- ` ${(0, logger_1.c)('yellow', '⚡')} ${(0, logger_1.bold)('Minimal mode')} — installing core agents and skills only`,
208
- );
209
- console.log();
210
- }
211
- const totalFiles = await (0, fs_2.countDir)(agentSrc);
212
- (0, logger_1.dbg)(`Source: ${agentSrc}`);
213
- (0, logger_1.dbg)(`Target: ${agentDest}`);
214
- (0, logger_1.dbg)(`Total source files: ${totalFiles}`);
215
- (0, logger_1.log)(
216
- ` ${(0, logger_1.c)('gray', '▸')} Scanning ${(0, logger_1.c)('white', String(totalFiles))} files ${(0, logger_1.c)('gray', '→')} ${(0, logger_1.c)('gray', agentDest)}`,
217
- );
218
- try {
219
- // Build filter for --minimal mode
220
- let filterFunc = isMinimal
221
- ? (name, parentDir, isDir) => {
222
- if (isDir) return true; // always traverse directories
223
- const parentName = path_1.default.basename(parentDir);
224
- if (parentName === 'agents') return CORE_AGENTS.has(name);
225
- if (parentName === 'skills') return CORE_SKILLS.has(name);
226
- return true; // everything else passes
227
- }
228
- : null;
229
-
230
- if (incremental && diff) {
231
- const addedSet = new Set(diff.added);
232
- const changedSet = new Set(diff.changed);
233
- const baseFilter = filterFunc;
234
- filterFunc = (name, parentDir, isDir) => {
235
- if (isDir) return true;
236
- if (baseFilter && !baseFilter(name, parentDir, isDir)) return false;
237
-
238
- const relativePath = path_1.default
239
- .relative(agentSrc, path_1.default.join(parentDir, name))
240
- .replace(/\\/g, '/');
241
- return addedSet.has(relativePath) || changedSet.has(relativePath);
242
- };
243
- }
244
-
245
- const copied = await (0, fs_2.copyDir)(agentSrc, agentDest, dryRun, filterFunc);
246
- // Generate and save hash manifest for incremental future updates
247
- if (!dryRun) {
248
- try {
249
- const manifest = await (0, hasher_1.generateManifest)(agentSrc);
250
- (0, hasher_1.writeManifest)(agentDest, manifest);
251
- (0, logger_1.dbg)(` Manifest saved: ${Object.keys(manifest).length} files hashed`);
252
- } catch (e) {
253
- (0, logger_1.dbg)(` Manifest generation skipped: ${e.message}`);
254
- }
255
- }
256
- console.log();
257
- if (dryRun) {
258
- (0, logger_1.ok)(
259
- `${(0, logger_1.bold)('DRY RUN')} complete — would install ${(0, logger_1.c)('cyan', String(copied))} files`,
260
- );
261
- (0, logger_1.dim)(`Target: ${agentDest}`);
262
- } else {
263
- const agentsCount = fs_1.default.readdirSync(path_1.default.join(agentDest, 'agents')).length;
264
- const workflowsCount = fs_1.default.readdirSync(
265
- path_1.default.join(agentDest, 'workflows'),
266
- ).length;
267
- const skillsCount = fs_1.default.readdirSync(path_1.default.join(agentDest, 'skills')).length;
268
- const scriptsCount = fs_1.default.readdirSync(
269
- path_1.default.join(agentDest, 'scripts'),
270
- ).length;
271
-
272
- const tree = new ActionTree();
273
- await tree.action('Establishing Anti-Hallucination Barrier', agentDest);
274
- await tree.branch(`${agentsCount} Core Specialists active in registry`);
275
- await tree.branch(`${skillsCount} Agentic Skills mapped via lazy routing`);
276
- await tree.branch(
277
- `${workflowsCount} Workflows & ${scriptsCount} Enforcement scripts installed`,
278
- );
279
- await tree.action('Synthesizing IDE Bridges');
280
- await generateIDEBridges(targetDir, agentDest, dryRun, isMinimal);
281
- await scaffoldDesignSystem(targetDir, agentSrc, dryRun);
282
- tree.complete(`Tribunal-Kit v${pkg.version} initialized successfully at ${targetDir}`);
283
- }
284
- console.log();
285
- } catch (e) {
286
- if (e instanceof Error) {
287
- (0, logger_1.err)(`Failed to install: ${e.message}`);
288
- } else {
289
- (0, logger_1.err)(`Failed to install: ${String(e)}`);
290
- }
291
- process.exit(1);
292
- }
293
- }
294
- async function generateIDEBridges(targetDir, agentDest, dryRun = false, isMinimal = false) {
295
- const rulesFilename = isMinimal ? 'kernel.md' : 'GEMINI.md';
296
- const rulesFile = path_1.default.join(agentDest, 'rules', rulesFilename);
297
- let rulesContent = '';
298
- try {
299
- rulesContent = await fs_1.default.promises.readFile(rulesFile, 'utf8');
300
- } catch {
301
- // rules file doesn't exist
302
- }
303
- // Bridge files consume the high-density kernel rules to save tokens, falling back to GEMINI.md
304
- const kernelFile = path_1.default.join(agentDest, 'rules', 'kernel.md');
305
- let bridgeRulesContent = '';
306
- let bridgeSource = rulesFilename;
307
- try {
308
- bridgeRulesContent = await fs_1.default.promises.readFile(kernelFile, 'utf8');
309
- bridgeSource = 'kernel.md';
310
- } catch {
311
- bridgeRulesContent = rulesContent;
312
- }
313
- if (!bridgeRulesContent) {
314
- bridgeRulesContent = rulesContent;
315
- }
316
- // Helper: write a bridge file only if it doesn't already exist
317
- const writeBridge = async (filePath, content, label) => {
318
- if (dryRun) {
319
- (0, logger_1.dbg)(` would create: ${filePath}`);
320
- return;
321
- }
322
- const dir = path_1.default.dirname(filePath);
323
- try {
324
- await fs_1.default.promises.mkdir(dir, { recursive: true });
325
- await fs_1.default.promises.stat(filePath);
326
- (0, logger_1.dbg)(` skip (exists): ${path_1.default.basename(filePath)}`);
327
- } catch (statErr) {
328
- if (statErr instanceof Error && statErr.code === 'ENOENT') {
329
- await fs_1.default.promises.writeFile(filePath, content, 'utf8');
330
- (0, logger_1.ok)(
331
- `${label} → ${(0, logger_1.c)('gray', path_1.default.relative(targetDir, filePath))}`,
332
- );
333
- }
334
- }
335
- };
336
- // ── 1. Cursor (.cursorrules) ──────────────────────────
337
- const cursorRules = `# Tribunal Kit — Cursor Bridge
338
- # Auto-generated by tribunal-kit init. Do not edit manually.
339
- # Source: .agent/rules/${bridgeSource}
340
-
341
- ${bridgeRulesContent}
342
- `;
343
- // ── 2. Windsurf (.windsurfrules) ─────────────────────
344
- const windsurfRules = `# Tribunal Kit — Windsurf Bridge
345
- # Auto-generated by tribunal-kit init. Do not edit manually.
346
- # Source: .agent/rules/${bridgeSource}
347
-
348
- ${bridgeRulesContent}
349
- `;
350
- // ── 3. Gemini / Antigravity (.gemini/settings.json) ──
351
- const geminiSettings =
352
- JSON.stringify(
353
- {
354
- rules: [{ path: `../.agent/rules/${rulesFilename}`, trigger: 'always_on' }],
355
- agents: { directory: '../.agent/agents' },
356
- skills: { directory: '../.agent/skills' },
357
- workflows: { directory: '../.agent/workflows' },
358
- },
359
- null,
360
- 2,
361
- ) + '\n';
362
- // ── Also create .gemini/GEMINI.md as a direct rules file ──
363
- const geminiRulesBridge = `---
364
- trigger: always_on
365
- ---
366
-
367
- # Tribunal Kit — Gemini Bridge
368
- # Auto-generated by tribunal-kit init.
369
- # Full rules: .agent/rules/${rulesFilename}
370
-
371
- ${bridgeRulesContent}
372
- `;
373
- // ── 4. GitHub Copilot (.github/copilot-instructions.md) ──
374
- const copilotInstructions = `# Tribunal Kit — Copilot Bridge
375
- # Auto-generated by tribunal-kit init. Do not edit manually.
376
- # Source: .agent/rules/${bridgeSource}
377
-
378
- ${bridgeRulesContent}
379
- `;
380
- // ── 5. Claude (.claude/CLAUDE.md & CLAUDE.md) ───────
381
- const claudeRules = `# Tribunal Kit — Claude Bridge
382
- # Auto-generated by tribunal-kit init. Do not edit manually.
383
- # Source: .agent/rules/${bridgeSource}
384
-
385
- ${bridgeRulesContent}
386
- `;
387
- // ── 6. Codex & Universal Agents (AGENTS.md) ──────────
388
- const codexRules = `# Tribunal Kit — Codex Bridge
389
- # Auto-generated by tribunal-kit init. Do not edit manually.
390
- # Source: .agent/rules/${bridgeSource}
391
-
392
- ${bridgeRulesContent}
393
- `;
394
- // Fire ALL bridge writes concurrently via Promise.all
395
- const bridges = [
396
- { path: path_1.default.join(targetDir, '.cursorrules'), content: cursorRules, label: 'Cursor' },
397
- {
398
- path: path_1.default.join(targetDir, '.windsurfrules'),
399
- content: windsurfRules,
400
- label: 'Windsurf',
401
- },
402
- {
403
- path: path_1.default.join(targetDir, '.gemini', 'settings.json'),
404
- content: geminiSettings,
405
- label: 'Gemini/Antigravity',
406
- },
407
- {
408
- path: path_1.default.join(targetDir, '.gemini', 'GEMINI.md'),
409
- content: geminiRulesBridge,
410
- label: 'Gemini rules',
411
- },
412
- {
413
- path: path_1.default.join(targetDir, '.github', 'copilot-instructions.md'),
414
- content: copilotInstructions,
415
- label: 'GitHub Copilot',
416
- },
417
- {
418
- path: path_1.default.join(targetDir, '.claude', 'CLAUDE.md'),
419
- content: claudeRules,
420
- label: 'Claude',
421
- },
422
- {
423
- path: path_1.default.join(targetDir, 'CLAUDE.md'),
424
- content: claudeRules,
425
- label: 'Claude root',
426
- },
427
- {
428
- path: path_1.default.join(targetDir, 'AGENTS.md'),
429
- content: codexRules,
430
- label: 'Codex / Multi-Agent',
431
- },
432
- ];
433
- await Promise.all(bridges.map(b => writeBridge(b.path, b.content, b.label)));
434
- console.log();
435
- }
436
- async function scaffoldDesignSystem(targetDir, agentSrc, dryRun = false) {
437
- const designMdSrc = path_1.default.join(agentSrc, 'templates', 'DESIGN.md');
438
- const designTokensSrc = path_1.default.join(agentSrc, 'templates', 'design-tokens.json');
439
- const designMdDest = path_1.default.join(targetDir, 'DESIGN.md');
440
- const designTokensDest = path_1.default.join(targetDir, 'design-tokens.json');
441
-
442
- const copyIfMissing = async (src, dest, label) => {
443
- if (!fs_1.default.existsSync(src)) return;
444
- if (fs_1.default.existsSync(dest)) {
445
- (0, logger_1.dbg)(` skip (exists): ${path_1.default.basename(dest)}`);
446
- return;
447
- }
448
- if (dryRun) {
449
- (0, logger_1.dbg)(` would create: ${dest}`);
450
- return;
451
- }
452
- await fs_1.default.promises.copyFile(src, dest);
453
- (0, logger_1.ok)(
454
- `${label} → ${(0, logger_1.c)('gray', path_1.default.relative(targetDir, dest))}`,
455
- );
456
- };
457
-
458
- await copyIfMissing(designMdSrc, designMdDest, 'DESIGN.md System');
459
- await copyIfMissing(designTokensSrc, designTokensDest, 'Design Tokens');
460
- }
461
- exports.CORE_AGENTS = CORE_AGENTS;
462
- exports.CORE_SKILLS = CORE_SKILLS;
1
+ 'use strict';
2
+ const __importDefault =
3
+ (this && this.__importDefault) ||
4
+ function (mod) {
5
+ return mod && mod.__esModule ? mod : { default: mod };
6
+ };
7
+ Object.defineProperty(exports, '__esModule', { value: true });
8
+ exports.cmdInit = cmdInit;
9
+ exports.generateIDEBridges = generateIDEBridges;
10
+ const fs_1 = __importDefault(require('fs'));
11
+ const path_1 = __importDefault(require('path'));
12
+ const logger_1 = require('../utils/logger');
13
+ const fs_2 = require('../utils/fs');
14
+ const helpers_1 = require('../utils/helpers');
15
+ const hasher_1 = require('../utils/hasher');
16
+ const { ActionTree } = require('../tui');
17
+
18
+ // Core agents to install in --minimal mode
19
+ const CORE_AGENTS = new Set([
20
+ 'backend-specialist.md',
21
+ 'frontend-specialist.md',
22
+ 'database-architect.md',
23
+ 'debugger.md',
24
+ 'security-auditor.md',
25
+ 'logic-reviewer.md',
26
+ 'dependency-reviewer.md',
27
+ 'type-safety-reviewer.md',
28
+ 'performance-reviewer.md',
29
+ 'orchestrator.md',
30
+ 'explorer-agent.md',
31
+ 'project-planner.md',
32
+ 'test-engineer.md',
33
+ 'ui-ux-auditor.md',
34
+ 'ui-visual-auditor.md',
35
+ 'accessibility-reviewer.md',
36
+ 'ux-reviewer.md',
37
+ 'visual-reviewer.md',
38
+ 'interaction-reviewer.md',
39
+ 'anti-pattern-reviewer.md',
40
+ 'product-reviewer.md',
41
+ ]);
42
+
43
+ // Core skills to install in --minimal mode
44
+ const CORE_SKILLS = new Set([
45
+ 'clean-code',
46
+ 'architecture',
47
+ 'testing-patterns',
48
+ 'systematic-debugging',
49
+ 'frontend-design',
50
+ 'database-design',
51
+ 'api-patterns',
52
+ 'nodejs-best-practices',
53
+ 'vulnerability-scanner',
54
+ 'typescript-advanced',
55
+ 'python-pro',
56
+ 'nextjs-react-expert',
57
+ 'react-specialist',
58
+ 'performance-profiling',
59
+ 'lint-and-validate',
60
+ 'ui-ux-pro-max',
61
+ 'ui-reasoning-engine',
62
+ 'product-aware-heuristics',
63
+ 'web-design-guidelines',
64
+ ]);
65
+
66
+ async function cmdInit(flags, quiet = false) {
67
+ const agentSrc = (0, helpers_1.getKitAgent)();
68
+ const targetDir = flags.path ? path_1.default.resolve(flags.path) : process.cwd();
69
+ const agentDest = path_1.default.join(targetDir, '.agent');
70
+ const dryRun = flags.dryRun || false;
71
+ const pkgStr = fs_1.default.readFileSync(
72
+ path_1.default.resolve(__dirname, '../../package.json'),
73
+ 'utf8',
74
+ );
75
+ const pkg = JSON.parse(pkgStr);
76
+
77
+ // ── Self-install guard ──────────────────────────────────
78
+ if ((0, fs_2.isSelfInstall)(targetDir, pkg.name, path_1.default.resolve(__dirname, '../..'))) {
79
+ (0, logger_1.err)('Cannot run init/update inside the tribunal-kit package itself.');
80
+ (0, logger_1.err)(`Target: ${targetDir}`);
81
+ (0, logger_1.err)(`Package: ${path_1.default.resolve(__dirname, '../..')}`);
82
+ console.log();
83
+ (0, logger_1.dim)('This command is designed to install .agent/ into OTHER projects.');
84
+ (0, logger_1.dim)('Run it from the root of the project you want to set up:');
85
+ (0, logger_1.dim)(' cd /path/to/your-project');
86
+ (0, logger_1.dim)(' npx tribunal-kit init');
87
+ console.log();
88
+ process.exit(1);
89
+ }
90
+
91
+ // ────────────────────────────────────────────────────────
92
+ let diff = null;
93
+ let incremental = false;
94
+
95
+ if (!dryRun && fs_1.default.existsSync(agentDest) && flags.force) {
96
+ const oldManifest = (0, hasher_1.readManifest)(agentDest);
97
+ if (oldManifest) {
98
+ const newManifest = await (0, hasher_1.generateManifest)(agentSrc);
99
+ diff = (0, hasher_1.diffManifests)(oldManifest, newManifest);
100
+ incremental = true;
101
+
102
+ const addCount = diff.added.length;
103
+ const changeCount = diff.changed.length;
104
+ const removeCount = diff.removed.length;
105
+
106
+ (0, logger_1.log)(
107
+ ` ${(0, logger_1.c)('cyan', '↻')} ${(0, logger_1.bold)('Performing incremental update...')}`,
108
+ );
109
+
110
+ const addedPart = `${(0, logger_1.c)('green', `[+ ${addCount}]`)} added`;
111
+ const changedPart = `${(0, logger_1.c)('yellow', `[~ ${changeCount}]`)} changed`;
112
+ const removedPart = `${(0, logger_1.c)('red', `[- ${removeCount}]`)} removed`;
113
+ (0, logger_1.log)(` ${addedPart} ${changedPart} ${removedPart}`);
114
+
115
+ const totalChanges = addCount + changeCount + removeCount;
116
+ if (totalChanges > 0) {
117
+ const maxBarWidth = 30;
118
+ const addPct = Math.round((addCount / totalChanges) * maxBarWidth);
119
+ const changePct = Math.round((changeCount / totalChanges) * maxBarWidth);
120
+ const removePct = Math.max(0, maxBarWidth - addPct - changePct);
121
+
122
+ const bar =
123
+ (0, logger_1.c)('green', '█'.repeat(addPct)) +
124
+ (0, logger_1.c)('yellow', '█'.repeat(changePct)) +
125
+ (0, logger_1.c)('red', '█'.repeat(removePct));
126
+
127
+ (0, logger_1.log)(` Syncing: [${bar}] ${totalChanges} files`);
128
+ }
129
+
130
+ const toBackup = [...diff.changed, ...diff.removed];
131
+ if (toBackup.length > 0) {
132
+ const backupDir = path_1.default.join(agentDest, '.backups', `backup-${Date.now()}`);
133
+ fs_1.default.mkdirSync(backupDir, { recursive: true });
134
+ let backedUpCount = 0;
135
+ for (const file of toBackup) {
136
+ const srcPath = path_1.default.join(agentDest, file);
137
+ const destPath = path_1.default.join(backupDir, file);
138
+ if (fs_1.default.existsSync(srcPath)) {
139
+ fs_1.default.mkdirSync(path_1.default.dirname(destPath), { recursive: true });
140
+ fs_1.default.copyFileSync(srcPath, destPath);
141
+ backedUpCount++;
142
+ }
143
+ }
144
+ (0, logger_1.log)(
145
+ ` ${(0, logger_1.c)('gray', '✦')} Backed up ${backedUpCount} modified/removed files ${(0, logger_1.c)('gray', '→')} ${(0, logger_1.c)('gray', '.agent/.backups/')}`,
146
+ );
147
+ }
148
+
149
+ for (const file of diff.removed) {
150
+ const target = path_1.default.join(agentDest, file);
151
+ if (fs_1.default.existsSync(target)) {
152
+ fs_1.default.rmSync(target);
153
+ }
154
+ }
155
+ } else {
156
+ const backupDir = path_1.default.join(agentDest, '.backups', `backup-${Date.now()}`);
157
+ fs_1.default.mkdirSync(backupDir, { recursive: true });
158
+ const subdirs = ['agents', 'workflows', 'skills', 'scripts', '.shared', 'rules'];
159
+ for (const sub of subdirs) {
160
+ const subPath = path_1.default.join(agentDest, sub);
161
+ if (fs_1.default.existsSync(subPath)) {
162
+ await (0, fs_2.copyDir)(subPath, path_1.default.join(backupDir, sub), false);
163
+ await fs_1.default.promises.rm(subPath, { recursive: true, force: true });
164
+ }
165
+ }
166
+ (0, logger_1.log)(
167
+ ` ${(0, logger_1.c)('gray', '✦')} Backed up existing configurations ${(0, logger_1.c)('gray', '→')} ${(0, logger_1.c)('gray', '.agent/.backups/')}`,
168
+ );
169
+ }
170
+ }
171
+
172
+ (0, helpers_1.banner)(quiet);
173
+ if (dryRun) {
174
+ (0, logger_1.log)((0, logger_1.colorize)('yellow', ' DRY RUN — no files will be written'));
175
+ console.log();
176
+ }
177
+
178
+ if (!fs_1.default.existsSync(targetDir)) {
179
+ (0, logger_1.err)(`Target directory not found: ${targetDir}`);
180
+ process.exit(1);
181
+ }
182
+
183
+ if (fs_1.default.existsSync(agentDest) && !flags.force) {
184
+ (0, logger_1.warn)('.agent/ already exists in this project.');
185
+ (0, logger_1.log)(
186
+ ` ${(0, logger_1.c)('gray', '▸')} To refresh or update it, run: ${(0, logger_1.colorize)('white', 'tribunal-kit init --force')}`,
187
+ );
188
+ (0, logger_1.log)(
189
+ ` ${(0, logger_1.c)('gray', '▸')} Or check status with: ${(0, logger_1.colorize)('cyan', 'tribunal-kit status')}`,
190
+ );
191
+ console.log();
192
+ process.exit(0);
193
+ }
194
+
195
+ if (!dryRun) {
196
+ const caseDir = path_1.default.join(agentDest, 'history', 'case-law', 'cases');
197
+ const evoDir = path_1.default.join(agentDest, 'history', 'skill-evolution');
198
+ fs_1.default.mkdirSync(caseDir, { recursive: true });
199
+ fs_1.default.mkdirSync(evoDir, { recursive: true });
200
+ const gkCase = path_1.default.join(caseDir, '.gitkeep');
201
+ const gkEvo = path_1.default.join(evoDir, '.gitkeep');
202
+ if (!fs_1.default.existsSync(gkCase)) fs_1.default.writeFileSync(gkCase, '');
203
+ if (!fs_1.default.existsSync(gkEvo)) fs_1.default.writeFileSync(gkEvo, '');
204
+ }
205
+
206
+ const isMinimal = flags.minimal || false;
207
+ if (isMinimal) {
208
+ (0, logger_1.log)(
209
+ ` ${(0, logger_1.c)('yellow', '⚡')} ${(0, logger_1.bold)('Minimal mode')} — installing core agents and skills only`,
210
+ );
211
+ console.log();
212
+ }
213
+ const totalFiles = await (0, fs_2.countDir)(agentSrc);
214
+ (0, logger_1.dbg)(`Source: ${agentSrc}`);
215
+ (0, logger_1.dbg)(`Target: ${agentDest}`);
216
+ (0, logger_1.dbg)(`Total source files: ${totalFiles}`);
217
+ (0, logger_1.log)(
218
+ ` ${(0, logger_1.c)('gray', '▸')} Scanning ${(0, logger_1.c)('white', String(totalFiles))} files ${(0, logger_1.c)('gray', '→')} ${(0, logger_1.c)('gray', agentDest)}`,
219
+ );
220
+
221
+ try {
222
+ let filterFunc = isMinimal
223
+ ? (name, parentDir, isDir) => {
224
+ if (isDir) return true;
225
+ const parentName = path_1.default.basename(parentDir);
226
+ if (parentName === 'agents') return CORE_AGENTS.has(name);
227
+ if (parentName === 'skills') return CORE_SKILLS.has(name);
228
+ return true;
229
+ }
230
+ : null;
231
+
232
+ if (incremental && diff) {
233
+ const addedSet = new Set(diff.added);
234
+ const changedSet = new Set(diff.changed);
235
+ const baseFilter = filterFunc;
236
+ filterFunc = (name, parentDir, isDir) => {
237
+ if (isDir) return true;
238
+ if (baseFilter && !baseFilter(name, parentDir, isDir)) return false;
239
+
240
+ const relativePath = path_1.default
241
+ .relative(agentSrc, path_1.default.join(parentDir, name))
242
+ .replace(/\\/g, '/');
243
+ return addedSet.has(relativePath) || changedSet.has(relativePath);
244
+ };
245
+ }
246
+
247
+ const copied = await (0, fs_2.copyDir)(agentSrc, agentDest, dryRun, filterFunc);
248
+
249
+ if (!dryRun) {
250
+ try {
251
+ const manifest = await (0, hasher_1.generateManifest)(agentSrc);
252
+ (0, hasher_1.writeManifest)(agentDest, manifest);
253
+ (0, logger_1.dbg)(` Manifest saved: ${Object.keys(manifest).length} files hashed`);
254
+ } catch (e) {
255
+ (0, logger_1.dbg)(` Manifest generation skipped: ${e.message}`);
256
+ }
257
+ }
258
+ console.log();
259
+ if (dryRun) {
260
+ (0, logger_1.ok)(
261
+ `${(0, logger_1.bold)('DRY RUN')} complete — would install ${(0, logger_1.c)('cyan', String(copied))} files`,
262
+ );
263
+ (0, logger_1.dim)(`Target: ${agentDest}`);
264
+ } else {
265
+ const agentsCount = fs_1.default.readdirSync(path_1.default.join(agentDest, 'agents')).length;
266
+ const workflowsCount = fs_1.default.readdirSync(
267
+ path_1.default.join(agentDest, 'workflows'),
268
+ ).length;
269
+ const skillsCount = fs_1.default.readdirSync(path_1.default.join(agentDest, 'skills')).length;
270
+ const scriptsCount = fs_1.default.readdirSync(
271
+ path_1.default.join(agentDest, 'scripts'),
272
+ ).length;
273
+
274
+ const tree = new ActionTree();
275
+ await tree.action('Establishing Anti-Hallucination Barrier', agentDest);
276
+ await tree.branch(`${agentsCount} Core Specialists active in registry`);
277
+ await tree.branch(`${skillsCount} Agentic Skills mapped via lazy routing`);
278
+ await tree.branch(
279
+ `${workflowsCount} Workflows & ${scriptsCount} Enforcement scripts installed`,
280
+ );
281
+ await tree.action('Synthesizing IDE Bridges');
282
+ await generateIDEBridges(targetDir, agentDest, dryRun, isMinimal);
283
+ await scaffoldDesignSystem(targetDir, agentSrc, dryRun);
284
+ tree.complete(`Tribunal-Kit v${pkg.version} initialized successfully at ${targetDir}`);
285
+
286
+ if (!quiet && !dryRun) {
287
+ // System-1 Installation Flow
288
+ const { System1Provider } = require('../system1/provider');
289
+ const system1 = new System1Provider();
290
+
291
+ let needsPrompt = false;
292
+ let isUpdate = false;
293
+ let isCorrupt = false;
294
+
295
+ if (system1.isAvailable()) {
296
+ const { checkHealth, getTargetVersion, getInstalledVersion } = require('./system1');
297
+ const healthy = await checkHealth();
298
+ if (healthy) {
299
+ const installed = getInstalledVersion();
300
+ const target = getTargetVersion();
301
+ if (installed.model === target.model && installed.laya === target.laya && installed.onnx === target.onnx) {
302
+ console.log();
303
+ (0, logger_1.log)('Checking System-1...');
304
+ console.log();
305
+ (0, logger_1.log)(` ${(0, logger_1.c)('green', '✓')} System-1 detected`);
306
+ (0, logger_1.log)(` ${(0, logger_1.c)('green', '✓')} Model integrity verified`);
307
+ (0, logger_1.log)(` ${(0, logger_1.c)('green', '✓')} Runtime compatible`);
308
+ (0, logger_1.log)('');
309
+ (0, logger_1.log)(' System-1 is ready.');
310
+ (0, logger_1.log)(' No additional download required.');
311
+ } else {
312
+ isUpdate = true;
313
+ needsPrompt = true;
314
+ }
315
+ } else {
316
+ isCorrupt = true;
317
+ needsPrompt = true;
318
+ }
319
+ } else {
320
+ needsPrompt = true;
321
+ }
322
+
323
+ if (needsPrompt) {
324
+ if (process.stdout.isTTY) {
325
+ if (isCorrupt) {
326
+ console.log();
327
+ (0, logger_1.log)(' System-1 installation appears corrupted.');
328
+ } else if (isUpdate) {
329
+ const { getTargetVersion, getInstalledVersion } = require('./system1');
330
+ const installed = getInstalledVersion();
331
+ const target = getTargetVersion();
332
+ console.log();
333
+ (0, logger_1.log)(' System-1 installation detected.');
334
+ (0, logger_1.log)('');
335
+ (0, logger_1.log)(` Version: ${installed.laya || 'Unknown'}`);
336
+ (0, logger_1.log)(` Required: ${target.laya}`);
337
+ (0, logger_1.log)('');
338
+ (0, logger_1.log)(' System-1 requires an update.');
339
+ } else {
340
+ console.log();
341
+ (0, logger_1.log)(' System-1 was not detected.');
342
+ (0, logger_1.log)('');
343
+ (0, logger_1.log)(' System-1 provides:');
344
+ (0, logger_1.log)(' • local decision intelligence');
345
+ (0, logger_1.log)(' • deterministic-first routing');
346
+ (0, logger_1.log)(' • reduced unnecessary LLM calls');
347
+ (0, logger_1.log)(' • faster impact classification');
348
+ (0, logger_1.log)('');
349
+ }
350
+
351
+ const readline = require('readline');
352
+ const rl = readline.createInterface({
353
+ input: process.stdin,
354
+ output: process.stdout,
355
+ });
356
+
357
+ await new Promise(resolve => {
358
+ let promptStr = ' Install System-1 now? [Y/n] ';
359
+ if (isUpdate) promptStr = ' Update System-1 now? [Y/n] ';
360
+ if (isCorrupt) promptStr = ' Repair System-1 now? [Y/n] ';
361
+
362
+ rl.question(promptStr, async answer => {
363
+ rl.close();
364
+ const lower = answer.trim().toLowerCase();
365
+ if (lower === 'y' || lower === 'yes' || lower === '') {
366
+ const { cmdSystem1 } = require('./system1');
367
+ let cmd = 'setup';
368
+ if (isUpdate) cmd = 'update';
369
+ if (isCorrupt) cmd = 'repair';
370
+ await cmdSystem1(flags, ['node', 'tk', 'system1', cmd], quiet);
371
+ } else {
372
+ (0, logger_1.log)('');
373
+ (0, logger_1.log)(' System-1 installation skipped.');
374
+ (0, logger_1.log)('');
375
+ (0, logger_1.log)(' Tribunal Kit will continue using its deterministic fallback.');
376
+ (0, logger_1.log)('');
377
+ (0, logger_1.log)(' You can install System-1 later with:');
378
+ (0, logger_1.log)(' tk system1 setup');
379
+ }
380
+ resolve();
381
+ });
382
+ });
383
+ } else {
384
+ // Non-interactive fallback
385
+ console.log();
386
+ (0, logger_1.log)(' System-1: NOT INSTALLED');
387
+ (0, logger_1.log)(' Interactive setup unavailable.');
388
+ (0, logger_1.log)('');
389
+ (0, logger_1.log)(' Tribunal Kit will use deterministic fallback.');
390
+ (0, logger_1.log)('');
391
+ (0, logger_1.log)(' Run:');
392
+ (0, logger_1.log)(' tk system1 setup');
393
+ }
394
+ }
395
+ }
396
+ }
397
+ console.log();
398
+ } catch (e) {
399
+ if (e instanceof Error) {
400
+ (0, logger_1.err)(`Failed to install: ${e.message}`);
401
+ } else {
402
+ (0, logger_1.err)(`Failed to install: ${String(e)}`);
403
+ }
404
+ process.exit(1);
405
+ }
406
+ }
407
+
408
+ async function generateIDEBridges(targetDir, agentDest, dryRun = false, isMinimal = false) {
409
+ const rulesFilename = isMinimal ? 'kernel.md' : 'GEMINI.md';
410
+ const rulesFile = path_1.default.join(agentDest, 'rules', rulesFilename);
411
+ let rulesContent = '';
412
+ try {
413
+ rulesContent = await fs_1.default.promises.readFile(rulesFile, 'utf8');
414
+ } catch {
415
+ // rules file doesn't exist
416
+ }
417
+
418
+ const kernelFile = path_1.default.join(agentDest, 'rules', 'kernel.md');
419
+ let bridgeRulesContent = '';
420
+ let bridgeSource = rulesFilename;
421
+ try {
422
+ bridgeRulesContent = await fs_1.default.promises.readFile(kernelFile, 'utf8');
423
+ bridgeSource = 'kernel.md';
424
+ } catch {
425
+ bridgeRulesContent = rulesContent;
426
+ }
427
+ if (!bridgeRulesContent) {
428
+ bridgeRulesContent = rulesContent;
429
+ }
430
+
431
+ const writeBridge = async (filePath, content, label) => {
432
+ if (dryRun) {
433
+ (0, logger_1.dbg)(` would create: ${filePath}`);
434
+ return;
435
+ }
436
+ const dir = path_1.default.dirname(filePath);
437
+ try {
438
+ await fs_1.default.promises.mkdir(dir, { recursive: true });
439
+ await fs_1.default.promises.stat(filePath);
440
+ (0, logger_1.dbg)(` skip (exists): ${path_1.default.basename(filePath)}`);
441
+ } catch (statErr) {
442
+ if (statErr instanceof Error && statErr.code === 'ENOENT') {
443
+ await fs_1.default.promises.writeFile(filePath, content, 'utf8');
444
+ (0, logger_1.ok)(
445
+ `${label} → ${(0, logger_1.c)('gray', path_1.default.relative(targetDir, filePath))}`,
446
+ );
447
+ }
448
+ }
449
+ };
450
+
451
+ const cursorRules = `# Tribunal Kit — Cursor Bridge\n# Auto-generated by tribunal-kit init. Do not edit manually.\n# Source: .agent/rules/${bridgeSource}\n\n${bridgeRulesContent}\n`;
452
+ const windsurfRules = `# Tribunal Kit — Windsurf Bridge\n# Auto-generated by tribunal-kit init. Do not edit manually.\n# Source: .agent/rules/${bridgeSource}\n\n${bridgeRulesContent}\n`;
453
+ const geminiSettings =
454
+ JSON.stringify(
455
+ {
456
+ rules: [{ path: `../.agent/rules/${rulesFilename}`, trigger: 'always_on' }],
457
+ agents: { directory: '../.agent/agents' },
458
+ skills: { directory: '../.agent/skills' },
459
+ workflows: { directory: '../.agent/workflows' },
460
+ },
461
+ null,
462
+ 2,
463
+ ) + '\n';
464
+ const geminiRulesBridge = `---\ntrigger: always_on\n---\n\n# Tribunal Kit — Gemini Bridge\n# Auto-generated by tribunal-kit init.\n# Full rules: .agent/rules/${rulesFilename}\n\n${bridgeRulesContent}\n`;
465
+ const copilotInstructions = `# Tribunal Kit — Copilot Bridge\n# Auto-generated by tribunal-kit init. Do not edit manually.\n# Source: .agent/rules/${bridgeSource}\n\n${bridgeRulesContent}\n`;
466
+ const claudeRules = `# Tribunal Kit — Claude Bridge\n# Auto-generated by tribunal-kit init. Do not edit manually.\n# Source: .agent/rules/${bridgeSource}\n\n${bridgeRulesContent}\n`;
467
+ const codexRules = `# Tribunal Kit — Codex Bridge\n# Auto-generated by tribunal-kit init. Do not edit manually.\n# Source: .agent/rules/${bridgeSource}\n\n${bridgeRulesContent}\n`;
468
+
469
+ const bridges = [
470
+ { path: path_1.default.join(targetDir, '.cursorrules'), content: cursorRules, label: 'Cursor' },
471
+ {
472
+ path: path_1.default.join(targetDir, '.windsurfrules'),
473
+ content: windsurfRules,
474
+ label: 'Windsurf',
475
+ },
476
+ {
477
+ path: path_1.default.join(targetDir, '.gemini', 'settings.json'),
478
+ content: geminiSettings,
479
+ label: 'Gemini/Antigravity',
480
+ },
481
+ {
482
+ path: path_1.default.join(targetDir, '.gemini', 'GEMINI.md'),
483
+ content: geminiRulesBridge,
484
+ label: 'Gemini rules',
485
+ },
486
+ {
487
+ path: path_1.default.join(targetDir, '.github', 'copilot-instructions.md'),
488
+ content: copilotInstructions,
489
+ label: 'GitHub Copilot',
490
+ },
491
+ {
492
+ path: path_1.default.join(targetDir, '.claude', 'CLAUDE.md'),
493
+ content: claudeRules,
494
+ label: 'Claude',
495
+ },
496
+ {
497
+ path: path_1.default.join(targetDir, 'CLAUDE.md'),
498
+ content: claudeRules,
499
+ label: 'Claude root',
500
+ },
501
+ {
502
+ path: path_1.default.join(targetDir, 'AGENTS.md'),
503
+ content: codexRules,
504
+ label: 'Codex / Multi-Agent',
505
+ },
506
+ ];
507
+ await Promise.all(bridges.map(b => writeBridge(b.path, b.content, b.label)));
508
+ console.log();
509
+ }
510
+
511
+ async function scaffoldDesignSystem(targetDir, agentSrc, dryRun = false) {
512
+ const designMdSrc = path_1.default.join(agentSrc, 'templates', 'DESIGN.md');
513
+ const designTokensSrc = path_1.default.join(agentSrc, 'templates', 'design-tokens.json');
514
+ const designMdDest = path_1.default.join(targetDir, 'DESIGN.md');
515
+ const designTokensDest = path_1.default.join(targetDir, 'design-tokens.json');
516
+
517
+ const copyIfMissing = async (src, dest, label) => {
518
+ if (!fs_1.default.existsSync(src)) return;
519
+ if (fs_1.default.existsSync(dest)) {
520
+ (0, logger_1.dbg)(` skip (exists): ${path_1.default.basename(dest)}`);
521
+ return;
522
+ }
523
+ if (dryRun) {
524
+ (0, logger_1.dbg)(` would create: ${dest}`);
525
+ return;
526
+ }
527
+ await fs_1.default.promises.copyFile(src, dest);
528
+ (0, logger_1.ok)(
529
+ `${label} → ${(0, logger_1.c)('gray', path_1.default.relative(targetDir, dest))}`,
530
+ );
531
+ };
532
+
533
+ await copyIfMissing(designMdSrc, designMdDest, 'DESIGN.md System');
534
+ await copyIfMissing(designTokensSrc, designTokensDest, 'Design Tokens');
535
+ }
536
+
537
+ exports.CORE_AGENTS = CORE_AGENTS;
538
+ exports.CORE_SKILLS = CORE_SKILLS;