tribunal-kit 9.2.5 → 9.2.6

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