@rulemetric/local 0.17.3 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -485,27 +485,22 @@ For more information, see https://radix-ui.com/primitives/docs/components/${t.do
485
485
  *
486
486
  * This source code is licensed under the ISC license.
487
487
  * See the LICENSE file in the root directory of this source tree.
488
- */const Fy=R("Rocket",[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]]);/**
488
+ */const Fy=R("RotateCcw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);/**
489
489
  * @license lucide-react v0.468.0 - ISC
490
490
  *
491
491
  * This source code is licensed under the ISC license.
492
492
  * See the LICENSE file in the root directory of this source tree.
493
- */const $y=R("RotateCcw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);/**
493
+ */const $y=R("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]);/**
494
494
  * @license lucide-react v0.468.0 - ISC
495
495
  *
496
496
  * This source code is licensed under the ISC license.
497
497
  * See the LICENSE file in the root directory of this source tree.
498
- */const Uy=R("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]);/**
498
+ */const Uy=R("Send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);/**
499
499
  * @license lucide-react v0.468.0 - ISC
500
500
  *
501
501
  * This source code is licensed under the ISC license.
502
502
  * See the LICENSE file in the root directory of this source tree.
503
- */const Hy=R("Send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);/**
504
- * @license lucide-react v0.468.0 - ISC
505
- *
506
- * This source code is licensed under the ISC license.
507
- * See the LICENSE file in the root directory of this source tree.
508
- */const By=R("ShieldAlert",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]]);/**
503
+ */const Hy=R("ShieldAlert",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]]);/**
509
504
  * @license lucide-react v0.468.0 - ISC
510
505
  *
511
506
  * This source code is licensed under the ISC license.
@@ -515,27 +510,27 @@ For more information, see https://radix-ui.com/primitives/docs/components/${t.do
515
510
  *
516
511
  * This source code is licensed under the ISC license.
517
512
  * See the LICENSE file in the root directory of this source tree.
518
- */const zy=R("Shield",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]]);/**
513
+ */const By=R("Shield",[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]]);/**
519
514
  * @license lucide-react v0.468.0 - ISC
520
515
  *
521
516
  * This source code is licensed under the ISC license.
522
517
  * See the LICENSE file in the root directory of this source tree.
523
- */const Wy=R("SlidersHorizontal",[["line",{x1:"21",x2:"14",y1:"4",y2:"4",key:"obuewd"}],["line",{x1:"10",x2:"3",y1:"4",y2:"4",key:"1q6298"}],["line",{x1:"21",x2:"12",y1:"12",y2:"12",key:"1iu8h1"}],["line",{x1:"8",x2:"3",y1:"12",y2:"12",key:"ntss68"}],["line",{x1:"21",x2:"16",y1:"20",y2:"20",key:"14d8ph"}],["line",{x1:"12",x2:"3",y1:"20",y2:"20",key:"m0wm8r"}],["line",{x1:"14",x2:"14",y1:"2",y2:"6",key:"14e1ph"}],["line",{x1:"8",x2:"8",y1:"10",y2:"14",key:"1i6ji0"}],["line",{x1:"16",x2:"16",y1:"18",y2:"22",key:"1lctlv"}]]);/**
518
+ */const zy=R("SlidersHorizontal",[["line",{x1:"21",x2:"14",y1:"4",y2:"4",key:"obuewd"}],["line",{x1:"10",x2:"3",y1:"4",y2:"4",key:"1q6298"}],["line",{x1:"21",x2:"12",y1:"12",y2:"12",key:"1iu8h1"}],["line",{x1:"8",x2:"3",y1:"12",y2:"12",key:"ntss68"}],["line",{x1:"21",x2:"16",y1:"20",y2:"20",key:"14d8ph"}],["line",{x1:"12",x2:"3",y1:"20",y2:"20",key:"m0wm8r"}],["line",{x1:"14",x2:"14",y1:"2",y2:"6",key:"14e1ph"}],["line",{x1:"8",x2:"8",y1:"10",y2:"14",key:"1i6ji0"}],["line",{x1:"16",x2:"16",y1:"18",y2:"22",key:"1lctlv"}]]);/**
524
519
  * @license lucide-react v0.468.0 - ISC
525
520
  *
526
521
  * This source code is licensed under the ISC license.
527
522
  * See the LICENSE file in the root directory of this source tree.
528
- */const Vy=R("Sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]]);/**
523
+ */const Wy=R("Sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]]);/**
529
524
  * @license lucide-react v0.468.0 - ISC
530
525
  *
531
526
  * This source code is licensed under the ISC license.
532
527
  * See the LICENSE file in the root directory of this source tree.
533
- */const Gy=R("Square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);/**
528
+ */const Vy=R("Square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);/**
534
529
  * @license lucide-react v0.468.0 - ISC
535
530
  *
536
531
  * This source code is licensed under the ISC license.
537
532
  * See the LICENSE file in the root directory of this source tree.
538
- */const qy=R("Star",[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",key:"r04s7s"}]]);/**
533
+ */const Gy=R("Star",[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",key:"r04s7s"}]]);/**
539
534
  * @license lucide-react v0.468.0 - ISC
540
535
  *
541
536
  * This source code is licensed under the ISC license.
@@ -545,22 +540,22 @@ For more information, see https://radix-ui.com/primitives/docs/components/${t.do
545
540
  *
546
541
  * This source code is licensed under the ISC license.
547
542
  * See the LICENSE file in the root directory of this source tree.
548
- */const Ky=R("TestTube",[["path",{d:"M14.5 2v17.5c0 1.4-1.1 2.5-2.5 2.5c-1.4 0-2.5-1.1-2.5-2.5V2",key:"125lnx"}],["path",{d:"M8.5 2h7",key:"csnxdl"}],["path",{d:"M14.5 16h-5",key:"1ox875"}]]);/**
543
+ */const qy=R("TestTube",[["path",{d:"M14.5 2v17.5c0 1.4-1.1 2.5-2.5 2.5c-1.4 0-2.5-1.1-2.5-2.5V2",key:"125lnx"}],["path",{d:"M8.5 2h7",key:"csnxdl"}],["path",{d:"M14.5 16h-5",key:"1ox875"}]]);/**
549
544
  * @license lucide-react v0.468.0 - ISC
550
545
  *
551
546
  * This source code is licensed under the ISC license.
552
547
  * See the LICENSE file in the root directory of this source tree.
553
- */const Yy=R("ThumbsDown",[["path",{d:"M17 14V2",key:"8ymqnk"}],["path",{d:"M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z",key:"m61m77"}]]);/**
548
+ */const Ky=R("ThumbsDown",[["path",{d:"M17 14V2",key:"8ymqnk"}],["path",{d:"M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z",key:"m61m77"}]]);/**
554
549
  * @license lucide-react v0.468.0 - ISC
555
550
  *
556
551
  * This source code is licensed under the ISC license.
557
552
  * See the LICENSE file in the root directory of this source tree.
558
- */const Xy=R("ThumbsUp",[["path",{d:"M7 10v12",key:"1qc93n"}],["path",{d:"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z",key:"emmmcr"}]]);/**
553
+ */const Yy=R("ThumbsUp",[["path",{d:"M7 10v12",key:"1qc93n"}],["path",{d:"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z",key:"emmmcr"}]]);/**
559
554
  * @license lucide-react v0.468.0 - ISC
560
555
  *
561
556
  * This source code is licensed under the ISC license.
562
557
  * See the LICENSE file in the root directory of this source tree.
563
- */const Zy=R("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]]);/**
558
+ */const Xy=R("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]]);/**
564
559
  * @license lucide-react v0.468.0 - ISC
565
560
  *
566
561
  * This source code is licensed under the ISC license.
@@ -570,62 +565,62 @@ For more information, see https://radix-ui.com/primitives/docs/components/${t.do
570
565
  *
571
566
  * This source code is licensed under the ISC license.
572
567
  * See the LICENSE file in the root directory of this source tree.
573
- */const Jy=R("TriangleAlert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);/**
568
+ */const Zy=R("TriangleAlert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);/**
574
569
  * @license lucide-react v0.468.0 - ISC
575
570
  *
576
571
  * This source code is licensed under the ISC license.
577
572
  * See the LICENSE file in the root directory of this source tree.
578
- */const Qy=R("Undo2",[["path",{d:"M9 14 4 9l5-5",key:"102s5s"}],["path",{d:"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11",key:"f3b9sd"}]]);/**
573
+ */const Jy=R("Undo2",[["path",{d:"M9 14 4 9l5-5",key:"102s5s"}],["path",{d:"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11",key:"f3b9sd"}]]);/**
579
574
  * @license lucide-react v0.468.0 - ISC
580
575
  *
581
576
  * This source code is licensed under the ISC license.
582
577
  * See the LICENSE file in the root directory of this source tree.
583
- */const ex=R("Upload",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"17 8 12 3 7 8",key:"t8dd8p"}],["line",{x1:"12",x2:"12",y1:"3",y2:"15",key:"widbto"}]]);/**
578
+ */const Qy=R("Upload",[["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["polyline",{points:"17 8 12 3 7 8",key:"t8dd8p"}],["line",{x1:"12",x2:"12",y1:"3",y2:"15",key:"widbto"}]]);/**
584
579
  * @license lucide-react v0.468.0 - ISC
585
580
  *
586
581
  * This source code is licensed under the ISC license.
587
582
  * See the LICENSE file in the root directory of this source tree.
588
- */const tx=R("UserCheck",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["polyline",{points:"16 11 18 13 22 9",key:"1pwet4"}]]);/**
583
+ */const ex=R("UserCheck",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["polyline",{points:"16 11 18 13 22 9",key:"1pwet4"}]]);/**
589
584
  * @license lucide-react v0.468.0 - ISC
590
585
  *
591
586
  * This source code is licensed under the ISC license.
592
587
  * See the LICENSE file in the root directory of this source tree.
593
- */const nx=R("UserPlus",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["line",{x1:"19",x2:"19",y1:"8",y2:"14",key:"1bvyxn"}],["line",{x1:"22",x2:"16",y1:"11",y2:"11",key:"1shjgl"}]]);/**
588
+ */const tx=R("UserPlus",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["line",{x1:"19",x2:"19",y1:"8",y2:"14",key:"1bvyxn"}],["line",{x1:"22",x2:"16",y1:"11",y2:"11",key:"1shjgl"}]]);/**
594
589
  * @license lucide-react v0.468.0 - ISC
595
590
  *
596
591
  * This source code is licensed under the ISC license.
597
592
  * See the LICENSE file in the root directory of this source tree.
598
- */const rx=R("User",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);/**
593
+ */const nx=R("User",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);/**
599
594
  * @license lucide-react v0.468.0 - ISC
600
595
  *
601
596
  * This source code is licensed under the ISC license.
602
597
  * See the LICENSE file in the root directory of this source tree.
603
- */const ox=R("Users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["path",{d:"M16 3.13a4 4 0 0 1 0 7.75",key:"1da9ce"}]]);/**
598
+ */const rx=R("Users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["path",{d:"M16 3.13a4 4 0 0 1 0 7.75",key:"1da9ce"}]]);/**
604
599
  * @license lucide-react v0.468.0 - ISC
605
600
  *
606
601
  * This source code is licensed under the ISC license.
607
602
  * See the LICENSE file in the root directory of this source tree.
608
- */const sx=R("WifiOff",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}],["path",{d:"M5 12.859a10 10 0 0 1 5.17-2.69",key:"1dl1wf"}],["path",{d:"M19 12.859a10 10 0 0 0-2.007-1.523",key:"4k23kn"}],["path",{d:"M2 8.82a15 15 0 0 1 4.177-2.643",key:"1grhjp"}],["path",{d:"M22 8.82a15 15 0 0 0-11.288-3.764",key:"z3jwby"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);/**
603
+ */const ox=R("WifiOff",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}],["path",{d:"M5 12.859a10 10 0 0 1 5.17-2.69",key:"1dl1wf"}],["path",{d:"M19 12.859a10 10 0 0 0-2.007-1.523",key:"4k23kn"}],["path",{d:"M2 8.82a15 15 0 0 1 4.177-2.643",key:"1grhjp"}],["path",{d:"M22 8.82a15 15 0 0 0-11.288-3.764",key:"z3jwby"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);/**
609
604
  * @license lucide-react v0.468.0 - ISC
610
605
  *
611
606
  * This source code is licensed under the ISC license.
612
607
  * See the LICENSE file in the root directory of this source tree.
613
- */const ax=R("Wifi",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M2 8.82a15 15 0 0 1 20 0",key:"dnpr2z"}],["path",{d:"M5 12.859a10 10 0 0 1 14 0",key:"1x1e6c"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}]]);/**
608
+ */const sx=R("Wifi",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M2 8.82a15 15 0 0 1 20 0",key:"dnpr2z"}],["path",{d:"M5 12.859a10 10 0 0 1 14 0",key:"1x1e6c"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}]]);/**
614
609
  * @license lucide-react v0.468.0 - ISC
615
610
  *
616
611
  * This source code is licensed under the ISC license.
617
612
  * See the LICENSE file in the root directory of this source tree.
618
- */const ix=R("Wrench",[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z",key:"cbrjhi"}]]);/**
613
+ */const ax=R("Wrench",[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z",key:"cbrjhi"}]]);/**
619
614
  * @license lucide-react v0.468.0 - ISC
620
615
  *
621
616
  * This source code is licensed under the ISC license.
622
617
  * See the LICENSE file in the root directory of this source tree.
623
- */const cx=R("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);/**
618
+ */const ix=R("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);/**
624
619
  * @license lucide-react v0.468.0 - ISC
625
620
  *
626
621
  * This source code is licensed under the ISC license.
627
622
  * See the LICENSE file in the root directory of this source tree.
628
- */const lx=R("Zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);function ge({className:e,...t}){return i.jsx("div",{"data-slot":"card",className:we("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",e),...t})}function ux({className:e,...t}){return i.jsx("div",{"data-slot":"card-header",className:we("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",e),...t})}function dx({className:e,...t}){return i.jsx("div",{"data-slot":"card-title",className:we("leading-none font-semibold",e),...t})}function fx({className:e,...t}){return i.jsx("div",{"data-slot":"card-description",className:we("text-muted-foreground text-sm",e),...t})}function ve({className:e,...t}){return i.jsx("div",{"data-slot":"card-content",className:we("px-6",e),...t})}function px({className:e,...t}){return i.jsx("div",{"data-slot":"card-footer",className:we("flex items-center px-6 [.border-t]:pt-6",e),...t})}function vg(e=2e3){const[t,n]=l.useState(!1),r=l.useCallback(async o=>{const s=()=>{n(!0),setTimeout(()=>n(!1),e)};try{return await navigator.clipboard.writeText(o),s(),!0}catch{try{const a=document.createElement("textarea");return a.value=o,a.style.position="fixed",a.style.opacity="0",document.body.appendChild(a),a.select(),document.execCommand("copy"),document.body.removeChild(a),s(),!0}catch{return!1}}},[e]);return{copied:t,copy:r}}const io="@rulemetric/cli",yg=`npm install -g ${io}`,hx=`npm install -g ${io}@latest`,mx=`npm i -g ${io}@latest`,xg=Pr("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90 [button&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90 [button&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 [button&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground [button&]:hover:bg-accent [button&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground [button&]:hover:bg-accent [button&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline [button&]:hover:underline"}},defaultVariants:{variant:"default"}});function co({className:e,variant:t="default",asChild:n=!1,...r}){const o=n?ks:"span";return i.jsx(o,{"data-slot":"badge","data-variant":t,className:we(xg({variant:t}),e),...r})}function hc({className:e,orientation:t="horizontal",...n}){return i.jsx(am,{"data-slot":"tabs","data-orientation":t,orientation:t,className:we("group/tabs flex gap-2 data-[orientation=horizontal]:flex-col",e),...n})}const bg=Pr("rounded-lg p-[3px] group-data-[orientation=horizontal]/tabs:h-9 data-[variant=line]:rounded-none group/tabs-list text-muted-foreground inline-flex w-fit max-w-full items-center justify-center group-data-[orientation=horizontal]/tabs:overflow-x-auto group-data-[orientation=vertical]/tabs:h-fit group-data-[orientation=vertical]/tabs:flex-col",{variants:{variant:{default:"bg-muted",line:"gap-1 bg-transparent"}},defaultVariants:{variant:"default"}});function mc({className:e,variant:t="default",...n}){return i.jsx(im,{"data-slot":"tabs-list","data-variant":t,className:we(bg({variant:t}),e),...n})}function ue({className:e,...t}){return i.jsx(cm,{"data-slot":"tabs-trigger",className:we("focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring text-foreground/60 hover:text-foreground dark:text-muted-foreground dark:hover:text-foreground relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-all cursor-pointer group-data-[orientation=vertical]/tabs:w-full group-data-[orientation=vertical]/tabs:justify-start focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 group-data-[variant=default]/tabs-list:data-[state=active]:shadow-sm group-data-[variant=line]/tabs-list:data-[state=active]:shadow-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4","group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:border-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent","data-[state=active]:bg-background dark:data-[state=active]:text-foreground dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 data-[state=active]:text-foreground","after:bg-foreground after:absolute after:opacity-0 after:transition-opacity group-data-[orientation=horizontal]/tabs:after:inset-x-0 group-data-[orientation=horizontal]/tabs:after:bottom-[-5px] group-data-[orientation=horizontal]/tabs:after:h-0.5 group-data-[orientation=vertical]/tabs:after:inset-y-0 group-data-[orientation=vertical]/tabs:after:-right-1 group-data-[orientation=vertical]/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-[state=active]:after:opacity-100",e),...t})}function de({className:e,...t}){return i.jsx(lm,{"data-slot":"tabs-content",className:we("flex-1 outline-none",e),...t})}function gc(e,t,n="tab"){const[r,o]=Zl(),s=r.get(n);return[s!=null&&e.includes(s)?s:t,d=>{o(u=>{const f=new URLSearchParams(u);return d===t?f.delete(n):f.set(n,d),f},{replace:!0})}]}const wg=[{group:"Auth",commands:[{name:"auth login",desc:"Log in to RuleMetric (email/password)"},{name:"auth create-key",desc:"Create a long-lived API key for hooks and proxy"},{name:"auth revoke-key",desc:"Revoke an API key"},{name:"auth logout",desc:"Log out and clear stored credentials"},{name:"auth status",desc:"Show current auth status"}]},{group:"Instructions",commands:[{name:"instructions list",desc:"List all your instructions"},{name:"import <file>",desc:"Import a CLAUDE.md, .cursorrules, etc."},{name:"catalog",desc:"Browse the org/team instruction catalog"}]},{group:"Sessions",commands:[{name:"sessions list",desc:"List captured sessions (supports --tool, --limit)"},{name:"sessions import <file>",desc:"Import session from JSONL/JSON (auto-detects tool)"}]},{group:"Hooks",commands:[{name:"hooks install",desc:"Install session tracking hooks in current project"},{name:"hooks install --global",desc:"Install hooks for all projects"},{name:"hooks uninstall",desc:"Remove hooks from current project"},{name:"hooks run <name>",desc:"Execute a hook script (called by AI tools)"}]},{group:"Evals",commands:[{name:"evals create <target-id>",desc:"Create eval test cases for a target"},{name:"evals run <target-id>",desc:"Execute evals (with/without target, grading)"},{name:"evals benchmark <target-id>",desc:"Aggregate runs into statistical benchmarks"},{name:"evals optimize <target-id>",desc:"Iteratively optimize instruction content"},{name:"evals optimize-description <target-id>",desc:"Optimize trigger description using queries"},{name:"evals compare <a-id> <b-id>",desc:"Blind A/B comparison between two targets"},{name:"evals agent",desc:"Run the worker in the foreground (one-off)"}]},{group:"Proxy",commands:[{name:"proxy start",desc:"Start the mitmproxy context sniffer"},{name:"proxy stop",desc:"Stop mitmproxy (gateway stays alive)"},{name:"proxy status",desc:"Check gateway and proxy health"}]},{group:"Worker / Service",commands:[{name:"service install --worker-only",desc:"Install the worker as a persistent service (launchd/systemd) — no repo needed"},{name:"service status",desc:"Check installed RuleMetric services"},{name:"service uninstall",desc:"Remove installed RuleMetric services"}]}],Cg=[{group:"Instructions",endpoints:[{method:"GET",path:"/api/instructions",desc:"List instructions (supports ?scope=, ?search=)"},{method:"POST",path:"/api/instructions",desc:"Create a new instruction"},{method:"GET",path:"/api/instructions/:id",desc:"Get instruction by ID"},{method:"PUT",path:"/api/instructions/:id",desc:"Update instruction (creates version on content change)"},{method:"DELETE",path:"/api/instructions/:id",desc:"Archive an instruction"}]},{group:"Sessions",endpoints:[{method:"POST",path:"/api/sessions",desc:"Create a new session"},{method:"GET",path:"/api/sessions",desc:"List sessions (?tool, ?outcome, ?friction, ?instructionId, ?projectPath)"},{method:"GET",path:"/api/sessions/:id",desc:"Get session with linked instructions"},{method:"POST",path:"/api/sessions/:id/events",desc:"Append event (atomic sequence assignment)"},{method:"PATCH",path:"/api/sessions/:id/enrich",desc:"Merge metadata, analysis, tokenUsage, externalSessionId"},{method:"POST",path:"/api/sessions/:id/analyze",desc:"AI-powered session analysis"},{method:"POST",path:"/api/sessions/import",desc:"Import from raw content (auto-detects tool)"},{method:"POST",path:"/api/sessions/link-instructions",desc:"Scan snapshots, auto-create + link instructions"}]},{group:"Context Snapshots",endpoints:[{method:"POST",path:"/api/sessions/:id/context-snapshots",desc:"Store captured LLM request snapshot"},{method:"GET",path:"/api/sessions/:id/context-snapshots",desc:"List snapshots (supports ?limit=, ?offset=)"},{method:"GET",path:"/api/context-snapshots/:id",desc:"Get single snapshot"}]},{group:"Eval Targets & Cases",endpoints:[{method:"POST",path:"/api/eval-targets",desc:"Create eval target"},{method:"GET",path:"/api/eval-targets",desc:"List targets (supports ?type=, ?content_hash=)"},{method:"GET",path:"/api/eval-targets/:id",desc:"Get target by ID"},{method:"PUT",path:"/api/eval-targets/:id",desc:"Update target (content change = new version)"},{method:"POST",path:"/api/eval-targets/:id/evals",desc:"Create test case for target"},{method:"GET",path:"/api/eval-targets/:id/evals",desc:"List test cases"}]},{group:"Eval Runs & Benchmarks",endpoints:[{method:"POST",path:"/api/eval-runs",desc:"Create eval run (posted by CLI worker)"},{method:"GET",path:"/api/eval-targets/:id/runs",desc:"List runs (supports ?iteration=, ?limit=)"},{method:"POST",path:"/api/eval-targets/:id/benchmarks",desc:"Create aggregated benchmark"},{method:"GET",path:"/api/eval-targets/:id/benchmarks",desc:"List benchmarks"}]},{group:"Eval Jobs",endpoints:[{method:"POST",path:"/api/eval-jobs",desc:"Create pending eval job (web UI triggers); the local CLI worker claims it via GET /api/work/next"},{method:"GET",path:"/api/eval-targets/:id/jobs",desc:"List jobs for a target"},{method:"PATCH",path:"/api/eval-jobs/:id/progress",desc:"Update job progress"},{method:"PATCH",path:"/api/eval-jobs/:id/state",desc:"Mirror state updates from worker (driven by runner.events)"},{method:"POST",path:"/api/eval-jobs/:id/cancel",desc:"Cancel a pending job"}]},{group:"Eval from Context",endpoints:[{method:"POST",path:"/api/eval-from-context",desc:"Find-or-create target + auto-generate evals + create job"}]},{group:"Eval Conversations",endpoints:[{method:"POST",path:"/api/eval-targets/:id/conversations",desc:"Get-or-create chat conversation"},{method:"POST",path:"/api/eval-conversations/:id/messages",desc:"Send user message (creates worker job)"},{method:"POST",path:"/api/eval-conversations/:id/messages/assistant",desc:"Worker posts assistant message"},{method:"POST",path:"/api/eval-conversations/:id/apply-proposal",desc:"Apply proposed content changes"}]},{group:"Insights",endpoints:[{method:"GET",path:"/api/insights/compute",desc:"Live aggregation (?projectPath, ?since, ?until)"},{method:"GET",path:"/api/insights/instruction-impact",desc:"With-vs-without comparison (?instructionId)"}]},{group:"API Keys",endpoints:[{method:"GET",path:"/api/auth/api-keys",desc:"List API keys for current user"},{method:"POST",path:"/api/auth/api-keys",desc:"Create new API key (returns key once)"},{method:"DELETE",path:"/api/auth/api-keys/:id",desc:"Revoke an API key"}]},{group:"Worker Status",endpoints:[{method:"POST",path:"/api/workers/heartbeat",desc:"Upsert worker connection heartbeat"},{method:"GET",path:"/api/workers/status",desc:"List all worker connections for user"}]}],Eg={GET:"text-teal-500 bg-teal-500/10 border-teal-500/20",POST:"text-blue-500 bg-blue-500/10 border-blue-500/20",PUT:"text-amber-500 bg-amber-500/10 border-amber-500/20",PATCH:"text-pink-500 bg-pink-500/10 border-pink-500/20",DELETE:"text-red-500 bg-red-500/10 border-red-500/20"},it=window.location.origin;function kg({text:e}){const{copied:t,copy:n}=vg();return i.jsx(og,{variant:"ghost",size:"sm",onClick:()=>n(e),className:"cursor-pointer h-7 text-xs",children:t?i.jsxs(i.Fragment,{children:[i.jsx(lg,{className:"mr-1 h-3 w-3"}),"Copied"]}):i.jsxs(i.Fragment,{children:[i.jsx(dg,{className:"mr-1 h-3 w-3"}),"Copy"]})})}function Z({label:e,code:t}){return i.jsxs("div",{className:"relative",children:[i.jsxs("div",{className:"flex items-center justify-between mb-1",children:[i.jsx("span",{className:"text-xs text-muted-foreground font-mono",children:e}),i.jsx(kg,{text:t})]}),i.jsx("pre",{className:"overflow-auto rounded-lg border border-border bg-[#0B1120] p-4 text-sm font-mono whitespace-pre-wrap",children:t})]})}function te({title:e,children:t}){return i.jsxs("div",{className:"space-y-3",children:[i.jsx("h3",{className:"text-lg font-mono font-semibold tracking-tight",children:e}),t]})}function Sg(){const[e,t]=gc(["claude-code","cursor","copilot","antigravity","windsurf","other"],"claude-code","tool");return i.jsxs("div",{className:"space-y-8",children:[i.jsxs(te,{title:"1. Sign Up & Log In",children:[i.jsx("p",{className:"text-sm text-muted-foreground",children:"Create an account on this dashboard, then authenticate the CLI:"}),i.jsxs("p",{className:"text-xs text-muted-foreground",children:["Rather keep everything on your own machine?"," ",i.jsx(gn,{to:"/docs?tab=local",className:"text-primary hover:underline",children:"Local Mode"})," ","runs the same product with no cloud contact — no account required."]}),i.jsx(Z,{label:"Terminal",code:`# Install the CLI
623
+ */const cx=R("Zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);function ge({className:e,...t}){return i.jsx("div",{"data-slot":"card",className:we("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",e),...t})}function lx({className:e,...t}){return i.jsx("div",{"data-slot":"card-header",className:we("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",e),...t})}function ux({className:e,...t}){return i.jsx("div",{"data-slot":"card-title",className:we("leading-none font-semibold",e),...t})}function dx({className:e,...t}){return i.jsx("div",{"data-slot":"card-description",className:we("text-muted-foreground text-sm",e),...t})}function ve({className:e,...t}){return i.jsx("div",{"data-slot":"card-content",className:we("px-6",e),...t})}function fx({className:e,...t}){return i.jsx("div",{"data-slot":"card-footer",className:we("flex items-center px-6 [.border-t]:pt-6",e),...t})}function vg(e=2e3){const[t,n]=l.useState(!1),r=l.useCallback(async o=>{const s=()=>{n(!0),setTimeout(()=>n(!1),e)};try{return await navigator.clipboard.writeText(o),s(),!0}catch{try{const a=document.createElement("textarea");return a.value=o,a.style.position="fixed",a.style.opacity="0",document.body.appendChild(a),a.select(),document.execCommand("copy"),document.body.removeChild(a),s(),!0}catch{return!1}}},[e]);return{copied:t,copy:r}}const io="@rulemetric/cli",yg=`npm install -g ${io}`,px=`npm install -g ${io}@latest`,hx=`npm i -g ${io}@latest`,xg=Pr("inline-flex items-center justify-center rounded-full border border-transparent px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"bg-primary text-primary-foreground [a&]:hover:bg-primary/90 [button&]:hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90 [button&]:hover:bg-secondary/90",destructive:"bg-destructive text-white [a&]:hover:bg-destructive/90 [button&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border-border text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground [button&]:hover:bg-accent [button&]:hover:text-accent-foreground",ghost:"[a&]:hover:bg-accent [a&]:hover:text-accent-foreground [button&]:hover:bg-accent [button&]:hover:text-accent-foreground",link:"text-primary underline-offset-4 [a&]:hover:underline [button&]:hover:underline"}},defaultVariants:{variant:"default"}});function co({className:e,variant:t="default",asChild:n=!1,...r}){const o=n?ks:"span";return i.jsx(o,{"data-slot":"badge","data-variant":t,className:we(xg({variant:t}),e),...r})}function hc({className:e,orientation:t="horizontal",...n}){return i.jsx(am,{"data-slot":"tabs","data-orientation":t,orientation:t,className:we("group/tabs flex gap-2 data-[orientation=horizontal]:flex-col",e),...n})}const bg=Pr("rounded-lg p-[3px] group-data-[orientation=horizontal]/tabs:h-9 data-[variant=line]:rounded-none group/tabs-list text-muted-foreground inline-flex w-fit max-w-full items-center justify-center group-data-[orientation=horizontal]/tabs:overflow-x-auto group-data-[orientation=vertical]/tabs:h-fit group-data-[orientation=vertical]/tabs:flex-col",{variants:{variant:{default:"bg-muted",line:"gap-1 bg-transparent"}},defaultVariants:{variant:"default"}});function mc({className:e,variant:t="default",...n}){return i.jsx(im,{"data-slot":"tabs-list","data-variant":t,className:we(bg({variant:t}),e),...n})}function ue({className:e,...t}){return i.jsx(cm,{"data-slot":"tabs-trigger",className:we("focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring text-foreground/60 hover:text-foreground dark:text-muted-foreground dark:hover:text-foreground relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-all cursor-pointer group-data-[orientation=vertical]/tabs:w-full group-data-[orientation=vertical]/tabs:justify-start focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 group-data-[variant=default]/tabs-list:data-[state=active]:shadow-sm group-data-[variant=line]/tabs-list:data-[state=active]:shadow-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4","group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:border-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent","data-[state=active]:bg-background dark:data-[state=active]:text-foreground dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 data-[state=active]:text-foreground","after:bg-foreground after:absolute after:opacity-0 after:transition-opacity group-data-[orientation=horizontal]/tabs:after:inset-x-0 group-data-[orientation=horizontal]/tabs:after:bottom-[-5px] group-data-[orientation=horizontal]/tabs:after:h-0.5 group-data-[orientation=vertical]/tabs:after:inset-y-0 group-data-[orientation=vertical]/tabs:after:-right-1 group-data-[orientation=vertical]/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-[state=active]:after:opacity-100",e),...t})}function de({className:e,...t}){return i.jsx(lm,{"data-slot":"tabs-content",className:we("flex-1 outline-none",e),...t})}function gc(e,t,n="tab"){const[r,o]=Zl(),s=r.get(n);return[s!=null&&e.includes(s)?s:t,d=>{o(u=>{const f=new URLSearchParams(u);return d===t?f.delete(n):f.set(n,d),f},{replace:!0})}]}const wg=[{group:"Auth",commands:[{name:"auth login",desc:"Log in to RuleMetric (email/password)"},{name:"auth create-key",desc:"Create a long-lived API key for hooks and proxy"},{name:"auth revoke-key",desc:"Revoke an API key"},{name:"auth logout",desc:"Log out and clear stored credentials"},{name:"auth status",desc:"Show current auth status"}]},{group:"Instructions",commands:[{name:"instructions list",desc:"List all your instructions"},{name:"import <file>",desc:"Import a CLAUDE.md, .cursorrules, etc."},{name:"catalog",desc:"Browse the org/team instruction catalog"}]},{group:"Sessions",commands:[{name:"sessions list",desc:"List captured sessions (supports --tool, --limit)"},{name:"sessions import <file>",desc:"Import session from JSONL/JSON (auto-detects tool)"}]},{group:"Hooks",commands:[{name:"hooks install",desc:"Install session tracking hooks in current project"},{name:"hooks install --global",desc:"Install hooks for all projects"},{name:"hooks uninstall",desc:"Remove hooks from current project"},{name:"hooks run <name>",desc:"Execute a hook script (called by AI tools)"}]},{group:"Evals",commands:[{name:"evals create <target-id>",desc:"Create eval test cases for a target"},{name:"evals run <target-id>",desc:"Execute evals (with/without target, grading)"},{name:"evals benchmark <target-id>",desc:"Aggregate runs into statistical benchmarks"},{name:"evals optimize <target-id>",desc:"Iteratively optimize instruction content"},{name:"evals optimize-description <target-id>",desc:"Optimize trigger description using queries"},{name:"evals compare <a-id> <b-id>",desc:"Blind A/B comparison between two targets"},{name:"evals agent",desc:"Run the worker in the foreground (one-off)"}]},{group:"Proxy",commands:[{name:"proxy start",desc:"Start the mitmproxy context sniffer"},{name:"proxy stop",desc:"Stop mitmproxy (gateway stays alive)"},{name:"proxy status",desc:"Check gateway and proxy health"}]},{group:"Worker / Service",commands:[{name:"service install --worker-only",desc:"Install the worker as a persistent service (launchd/systemd) — no repo needed"},{name:"service status",desc:"Check installed RuleMetric services"},{name:"service uninstall",desc:"Remove installed RuleMetric services"}]}],Cg=[{group:"Instructions",endpoints:[{method:"GET",path:"/api/instructions",desc:"List instructions (supports ?scope=, ?search=)"},{method:"POST",path:"/api/instructions",desc:"Create a new instruction"},{method:"GET",path:"/api/instructions/:id",desc:"Get instruction by ID"},{method:"PUT",path:"/api/instructions/:id",desc:"Update instruction (creates version on content change)"},{method:"DELETE",path:"/api/instructions/:id",desc:"Archive an instruction"}]},{group:"Sessions",endpoints:[{method:"POST",path:"/api/sessions",desc:"Create a new session"},{method:"GET",path:"/api/sessions",desc:"List sessions (?tool, ?outcome, ?friction, ?instructionId, ?projectPath)"},{method:"GET",path:"/api/sessions/:id",desc:"Get session with linked instructions"},{method:"POST",path:"/api/sessions/:id/events",desc:"Append event (atomic sequence assignment)"},{method:"PATCH",path:"/api/sessions/:id/enrich",desc:"Merge metadata, analysis, tokenUsage, externalSessionId"},{method:"POST",path:"/api/sessions/:id/analyze",desc:"AI-powered session analysis"},{method:"POST",path:"/api/sessions/import",desc:"Import from raw content (auto-detects tool)"},{method:"POST",path:"/api/sessions/link-instructions",desc:"Scan snapshots, auto-create + link instructions"}]},{group:"Context Snapshots",endpoints:[{method:"POST",path:"/api/sessions/:id/context-snapshots",desc:"Store captured LLM request snapshot"},{method:"GET",path:"/api/sessions/:id/context-snapshots",desc:"List snapshots (supports ?limit=, ?offset=)"},{method:"GET",path:"/api/context-snapshots/:id",desc:"Get single snapshot"}]},{group:"Eval Targets & Cases",endpoints:[{method:"POST",path:"/api/eval-targets",desc:"Create eval target"},{method:"GET",path:"/api/eval-targets",desc:"List targets (supports ?type=, ?content_hash=)"},{method:"GET",path:"/api/eval-targets/:id",desc:"Get target by ID"},{method:"PUT",path:"/api/eval-targets/:id",desc:"Update target (content change = new version)"},{method:"POST",path:"/api/eval-targets/:id/evals",desc:"Create test case for target"},{method:"GET",path:"/api/eval-targets/:id/evals",desc:"List test cases"}]},{group:"Eval Runs & Benchmarks",endpoints:[{method:"POST",path:"/api/eval-runs",desc:"Create eval run (posted by CLI worker)"},{method:"GET",path:"/api/eval-targets/:id/runs",desc:"List runs (supports ?iteration=, ?limit=)"},{method:"POST",path:"/api/eval-targets/:id/benchmarks",desc:"Create aggregated benchmark"},{method:"GET",path:"/api/eval-targets/:id/benchmarks",desc:"List benchmarks"}]},{group:"Eval Jobs",endpoints:[{method:"POST",path:"/api/eval-jobs",desc:"Create pending eval job (web UI triggers); the local CLI worker claims it via GET /api/work/next"},{method:"GET",path:"/api/eval-targets/:id/jobs",desc:"List jobs for a target"},{method:"PATCH",path:"/api/eval-jobs/:id/progress",desc:"Update job progress"},{method:"PATCH",path:"/api/eval-jobs/:id/state",desc:"Mirror state updates from worker (driven by runner.events)"},{method:"POST",path:"/api/eval-jobs/:id/cancel",desc:"Cancel a pending job"}]},{group:"Eval from Context",endpoints:[{method:"POST",path:"/api/eval-from-context",desc:"Find-or-create target + auto-generate evals + create job"}]},{group:"Eval Conversations",endpoints:[{method:"POST",path:"/api/eval-targets/:id/conversations",desc:"Get-or-create chat conversation"},{method:"POST",path:"/api/eval-conversations/:id/messages",desc:"Send user message (creates worker job)"},{method:"POST",path:"/api/eval-conversations/:id/messages/assistant",desc:"Worker posts assistant message"},{method:"POST",path:"/api/eval-conversations/:id/apply-proposal",desc:"Apply proposed content changes"}]},{group:"Insights",endpoints:[{method:"GET",path:"/api/insights/compute",desc:"Live aggregation (?projectPath, ?since, ?until)"},{method:"GET",path:"/api/insights/instruction-impact",desc:"With-vs-without comparison (?instructionId)"}]},{group:"API Keys",endpoints:[{method:"GET",path:"/api/auth/api-keys",desc:"List API keys for current user"},{method:"POST",path:"/api/auth/api-keys",desc:"Create new API key (returns key once)"},{method:"DELETE",path:"/api/auth/api-keys/:id",desc:"Revoke an API key"}]},{group:"Worker Status",endpoints:[{method:"POST",path:"/api/workers/heartbeat",desc:"Upsert worker connection heartbeat"},{method:"GET",path:"/api/workers/status",desc:"List all worker connections for user"}]}],Eg={GET:"text-teal-500 bg-teal-500/10 border-teal-500/20",POST:"text-blue-500 bg-blue-500/10 border-blue-500/20",PUT:"text-amber-500 bg-amber-500/10 border-amber-500/20",PATCH:"text-pink-500 bg-pink-500/10 border-pink-500/20",DELETE:"text-red-500 bg-red-500/10 border-red-500/20"},it=window.location.origin;function kg({text:e}){const{copied:t,copy:n}=vg();return i.jsx(og,{variant:"ghost",size:"sm",onClick:()=>n(e),className:"cursor-pointer h-7 text-xs",children:t?i.jsxs(i.Fragment,{children:[i.jsx(lg,{className:"mr-1 h-3 w-3"}),"Copied"]}):i.jsxs(i.Fragment,{children:[i.jsx(dg,{className:"mr-1 h-3 w-3"}),"Copy"]})})}function Z({label:e,code:t}){return i.jsxs("div",{className:"relative",children:[i.jsxs("div",{className:"flex items-center justify-between mb-1",children:[i.jsx("span",{className:"text-xs text-muted-foreground font-mono",children:e}),i.jsx(kg,{text:t})]}),i.jsx("pre",{className:"overflow-auto rounded-lg border border-border bg-[#0B1120] p-4 text-sm font-mono whitespace-pre-wrap",children:t})]})}function te({title:e,children:t}){return i.jsxs("div",{className:"space-y-3",children:[i.jsx("h3",{className:"text-lg font-mono font-semibold tracking-tight",children:e}),t]})}function Sg(){const[e,t]=gc(["claude-code","cursor","copilot","antigravity","windsurf","other"],"claude-code","tool");return i.jsxs("div",{className:"space-y-8",children:[i.jsxs(te,{title:"1. Sign Up & Log In",children:[i.jsx("p",{className:"text-sm text-muted-foreground",children:"Create an account on this dashboard, then authenticate the CLI:"}),i.jsxs("p",{className:"text-xs text-muted-foreground",children:["Rather keep everything on your own machine?"," ",i.jsx(gn,{to:"/docs?tab=local",className:"text-primary hover:underline",children:"Local Mode"})," ","runs the same product with no cloud contact — no account required."]}),i.jsx(Z,{label:"Terminal",code:`# Install the CLI
629
624
  ${yg}
630
625
 
631
626
  # Log in (email/password prompt)
@@ -789,4 +784,4 @@ rulemetric capture scope --tool hooks --off
789
784
 
790
785
  # The worker's Codex transcript sweep
791
786
  rulemetric capture scope --add ~/work/client-a
792
- rulemetric capture scope --off`}),i.jsx("p",{className:"text-sm text-muted-foreground",children:"One honest caveat: the optional mitmproxy network-capture chain is governed by its host allowlist, not by these scopes. Hooks-first capture (the default) is fully governed."})]})})})]})}function gx(){const[e,t]=gc(["getting-started","cli","api","evals","proxy","insights","data","local"],"getting-started");return i.jsxs("div",{className:"space-y-6",children:[i.jsxs("div",{children:[i.jsx("h2",{className:"text-2xl font-mono font-bold tracking-tight",children:"Documentation"}),i.jsx("p",{className:"text-muted-foreground",children:"Guides, CLI reference, API reference, and system documentation"})]}),i.jsxs(hc,{value:e,onValueChange:t,children:[i.jsxs(mc,{children:[i.jsxs(ue,{value:"getting-started",className:"cursor-pointer",children:[i.jsx(cg,{className:"mr-2 h-4 w-4"}),"Quick Start"]}),i.jsxs(ue,{value:"cli",className:"cursor-pointer",children:[i.jsx(mg,{className:"mr-2 h-4 w-4"}),"CLI Reference"]}),i.jsxs(ue,{value:"api",className:"cursor-pointer",children:[i.jsx(ug,{className:"mr-2 h-4 w-4"}),"API Reference"]}),i.jsxs(ue,{value:"evals",className:"cursor-pointer",children:[i.jsx(fg,{className:"mr-2 h-4 w-4"}),"Eval System"]}),i.jsxs(ue,{value:"proxy",className:"cursor-pointer",children:[i.jsx(pg,{className:"mr-2 h-4 w-4"}),"Proxy & Context"]}),i.jsxs(ue,{value:"insights",className:"cursor-pointer",children:[i.jsx(gg,{className:"mr-2 h-4 w-4"}),"Insights"]}),i.jsxs(ue,{value:"local",className:"cursor-pointer",children:[i.jsx(pc,{className:"mr-2 h-4 w-4"}),"Local Mode"]}),i.jsxs(ue,{value:"data",className:"cursor-pointer",children:[i.jsx(hg,{className:"mr-2 h-4 w-4"}),"Data & Retention"]})]}),i.jsx(de,{value:"getting-started",className:"mt-6",children:i.jsx(Sg,{})}),i.jsx(de,{value:"cli",className:"mt-6",children:i.jsx(Rg,{})}),i.jsx(de,{value:"api",className:"mt-6",children:i.jsx(Tg,{})}),i.jsx(de,{value:"evals",className:"mt-6",children:i.jsx(Mg,{})}),i.jsx(de,{value:"proxy",className:"mt-6",children:i.jsx(Pg,{})}),i.jsx(de,{value:"insights",className:"mt-6",children:i.jsx(jg,{})}),i.jsx(de,{value:"local",className:"mt-6",children:i.jsx(Ag,{})}),i.jsx(de,{value:"data",className:"mt-6",children:i.jsx(Ng,{})})]})]})}export{Jg as $,Iy as A,og as B,Vg as C,qg as D,Sv as E,fg as F,by as G,gg as H,yy as I,Fv as J,ny as K,gn as L,gy as M,Og as N,Wg as O,zg as P,Cy as Q,Hg as R,Vy as S,Gg as T,Ky as U,Wy as V,cg as W,cx as X,zy as Y,Ry as Z,$g as _,Ec as a,ay as a$,Qg as a0,ev as a1,tv as a2,rv as a3,ov as a4,nv as a5,Yg as a6,Xg as a7,Bg as a8,kr as a9,sv as aA,Zl as aB,fx as aC,px as aD,xv as aE,bv as aF,wv as aG,Cv as aH,Ev as aI,kv as aJ,lx as aK,My as aL,ug as aM,Uv as aN,py as aO,ey as aP,ly as aQ,fc as aR,gc as aS,hc as aT,mc as aU,ue as aV,de as aW,ry as aX,ax as aY,sx as aZ,xy as a_,Lv as aa,Hv as ab,Wv as ac,Qv as ad,_v as ae,Ov as af,Ty as ag,rx as ah,ky as ai,Vv as aj,mx as ak,Zv as al,yg as am,hx as an,vy as ao,Dy as ap,co as aq,Ay as ar,Ly as as,Hy as at,Jv as au,jv as av,Kv as aw,dy as ax,hy as ay,my as az,l as b,iy as b0,Oy as b1,Zy as b2,mg as b3,cy as b4,Bv as b5,Nv as b6,Tv as b7,Av as b8,Mv as b9,ex as bA,Uy as bB,Ny as bC,$y as bD,Rv as bE,qy as bF,Dv as bG,Qy as bH,Xv as bI,Iv as bJ,$v as bK,ox as bL,Sy as bM,nx as bN,oy as bO,Pv as bP,ty as bQ,tx as bR,By as bS,Fg as bT,Dg as bU,wl as bV,fy as ba,Yv as bb,av as bc,iv as bd,lv as be,cv as bf,uv as bg,dv as bh,fv as bi,pv as bj,mv as bk,hv as bl,gv as bm,zv as bn,vv as bo,Fy as bp,uy as bq,_y as br,Xy as bs,Yy as bt,Gy as bu,gx as bv,qv as bw,jy as bx,ix as by,sy as bz,ws as c,we as d,Kg as e,lg as f,_g as g,dg as h,ge as i,i as j,ux as k,dx as l,ve as m,Ig as n,We as o,Ey as p,Py as q,br as r,Jy as s,Gv as t,vg as u,ou as v,Lg as w,He as x,yv as y,wy as z};
787
+ rulemetric capture scope --off`}),i.jsx("p",{className:"text-sm text-muted-foreground",children:"One honest caveat: the optional mitmproxy network-capture chain is governed by its host allowlist, not by these scopes. Hooks-first capture (the default) is fully governed."})]})})})]})}function mx(){const[e,t]=gc(["getting-started","cli","api","evals","proxy","insights","data","local"],"getting-started");return i.jsxs("div",{className:"space-y-6",children:[i.jsxs("div",{children:[i.jsx("h2",{className:"text-2xl font-mono font-bold tracking-tight",children:"Documentation"}),i.jsx("p",{className:"text-muted-foreground",children:"Guides, CLI reference, API reference, and system documentation"})]}),i.jsxs(hc,{value:e,onValueChange:t,children:[i.jsxs(mc,{children:[i.jsxs(ue,{value:"getting-started",className:"cursor-pointer",children:[i.jsx(cg,{className:"mr-2 h-4 w-4"}),"Quick Start"]}),i.jsxs(ue,{value:"cli",className:"cursor-pointer",children:[i.jsx(mg,{className:"mr-2 h-4 w-4"}),"CLI Reference"]}),i.jsxs(ue,{value:"api",className:"cursor-pointer",children:[i.jsx(ug,{className:"mr-2 h-4 w-4"}),"API Reference"]}),i.jsxs(ue,{value:"evals",className:"cursor-pointer",children:[i.jsx(fg,{className:"mr-2 h-4 w-4"}),"Eval System"]}),i.jsxs(ue,{value:"proxy",className:"cursor-pointer",children:[i.jsx(pg,{className:"mr-2 h-4 w-4"}),"Proxy & Context"]}),i.jsxs(ue,{value:"insights",className:"cursor-pointer",children:[i.jsx(gg,{className:"mr-2 h-4 w-4"}),"Insights"]}),i.jsxs(ue,{value:"local",className:"cursor-pointer",children:[i.jsx(pc,{className:"mr-2 h-4 w-4"}),"Local Mode"]}),i.jsxs(ue,{value:"data",className:"cursor-pointer",children:[i.jsx(hg,{className:"mr-2 h-4 w-4"}),"Data & Retention"]})]}),i.jsx(de,{value:"getting-started",className:"mt-6",children:i.jsx(Sg,{})}),i.jsx(de,{value:"cli",className:"mt-6",children:i.jsx(Rg,{})}),i.jsx(de,{value:"api",className:"mt-6",children:i.jsx(Tg,{})}),i.jsx(de,{value:"evals",className:"mt-6",children:i.jsx(Mg,{})}),i.jsx(de,{value:"proxy",className:"mt-6",children:i.jsx(Pg,{})}),i.jsx(de,{value:"insights",className:"mt-6",children:i.jsx(jg,{})}),i.jsx(de,{value:"local",className:"mt-6",children:i.jsx(Ag,{})}),i.jsx(de,{value:"data",className:"mt-6",children:i.jsx(Ng,{})})]})]})}export{Jg as $,Iy as A,og as B,Vg as C,qg as D,Sv as E,fg as F,by as G,gg as H,yy as I,Fv as J,ny as K,gn as L,gy as M,Og as N,Wg as O,zg as P,Cy as Q,Hg as R,Wy as S,Gg as T,qy as U,zy as V,cg as W,ix as X,By as Y,Ry as Z,$g as _,Ec as a,iy as a$,Qg as a0,ev as a1,tv as a2,rv as a3,ov as a4,nv as a5,Yg as a6,Xg as a7,Bg as a8,kr as a9,Zl as aA,dx as aB,fx as aC,xv as aD,bv as aE,wv as aF,Cv as aG,Ev as aH,kv as aI,cx as aJ,My as aK,ug as aL,Uv as aM,py as aN,ey as aO,ly as aP,fc as aQ,gc as aR,hc as aS,mc as aT,ue as aU,de as aV,ry as aW,sx as aX,ox as aY,xy as aZ,ay as a_,Lv as aa,Hv as ab,Wv as ac,Qv as ad,_v as ae,Ov as af,Ty as ag,nx as ah,ky as ai,Vv as aj,hx as ak,yg as al,px as am,vy as an,Dy as ao,co as ap,Ay as aq,Ly as ar,Uy as as,Jv as at,jv as au,Kv as av,dy as aw,hy as ax,my as ay,sv as az,l as b,Oy as b0,Xy as b1,mg as b2,cy as b3,Bv as b4,Nv as b5,Tv as b6,Av as b7,Mv as b8,fy as b9,$y as bA,Ny as bB,Fy as bC,Rv as bD,Gy as bE,Dv as bF,Jy as bG,Xv as bH,Iv as bI,$v as bJ,rx as bK,Sy as bL,tx as bM,oy as bN,Pv as bO,ty as bP,ex as bQ,Hy as bR,Fg as bS,Dg as bT,wl as bU,Yv as ba,av as bb,iv as bc,lv as bd,cv as be,uv as bf,dv as bg,fv as bh,pv as bi,mv as bj,hv as bk,gv as bl,zv as bm,vv as bn,uy as bo,_y as bp,Zv as bq,Yy as br,Ky as bs,Vy as bt,mx as bu,qv as bv,jy as bw,ax as bx,sy as by,Qy as bz,ws as c,we as d,Kg as e,lg as f,_g as g,dg as h,ge as i,i as j,lx as k,ux as l,ve as m,Ig as n,We as o,Ey as p,Py as q,br as r,Zy as s,Gv as t,vg as u,ou as v,Lg as w,He as x,yv as y,wy as z};