@harness-engineering/cli 2.6.1 → 2.7.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.
Files changed (156) hide show
  1. package/dist/agents/skills/claude-code/align-design-system/SKILL.md +174 -0
  2. package/dist/agents/skills/claude-code/align-design-system/skill.yaml +57 -0
  3. package/dist/agents/skills/claude-code/audit-brand-compliance/SKILL.md +189 -0
  4. package/dist/agents/skills/claude-code/audit-brand-compliance/skill.yaml +50 -0
  5. package/dist/agents/skills/claude-code/audit-component-anatomy/SKILL.md +181 -0
  6. package/dist/agents/skills/claude-code/audit-component-anatomy/skill.yaml +51 -0
  7. package/dist/agents/skills/claude-code/copy-craft/SKILL.md +192 -0
  8. package/dist/agents/skills/claude-code/copy-craft/skill.yaml +52 -0
  9. package/dist/agents/skills/claude-code/detect-design-drift/SKILL.md +139 -0
  10. package/dist/agents/skills/claude-code/detect-design-drift/skill.yaml +50 -0
  11. package/dist/agents/skills/claude-code/harness-accessibility/SKILL.md +10 -0
  12. package/dist/agents/skills/claude-code/harness-design-craft/SKILL.md +212 -0
  13. package/dist/agents/skills/claude-code/harness-design-craft/skill.yaml +57 -0
  14. package/dist/agents/skills/claude-code/harness-design-pipeline/SKILL.md +266 -0
  15. package/dist/agents/skills/claude-code/harness-design-pipeline/skill.yaml +70 -0
  16. package/dist/agents/skills/claude-code/knowledge-craft/SKILL.md +180 -0
  17. package/dist/agents/skills/claude-code/knowledge-craft/skill.yaml +49 -0
  18. package/dist/agents/skills/claude-code/naming-craft/SKILL.md +172 -0
  19. package/dist/agents/skills/claude-code/naming-craft/skill.yaml +51 -0
  20. package/dist/agents/skills/claude-code/security-craft/SKILL.md +205 -0
  21. package/dist/agents/skills/claude-code/security-craft/skill.yaml +58 -0
  22. package/dist/agents/skills/claude-code/spec-craft/SKILL.md +184 -0
  23. package/dist/agents/skills/claude-code/spec-craft/skill.yaml +55 -0
  24. package/dist/agents/skills/claude-code/test-craft/SKILL.md +212 -0
  25. package/dist/agents/skills/claude-code/test-craft/skill.yaml +58 -0
  26. package/dist/agents/skills/codex/align-design-system/SKILL.md +174 -0
  27. package/dist/agents/skills/codex/align-design-system/skill.yaml +57 -0
  28. package/dist/agents/skills/codex/audit-brand-compliance/SKILL.md +189 -0
  29. package/dist/agents/skills/codex/audit-brand-compliance/skill.yaml +50 -0
  30. package/dist/agents/skills/codex/audit-component-anatomy/SKILL.md +181 -0
  31. package/dist/agents/skills/codex/audit-component-anatomy/skill.yaml +51 -0
  32. package/dist/agents/skills/codex/copy-craft/SKILL.md +192 -0
  33. package/dist/agents/skills/codex/copy-craft/skill.yaml +52 -0
  34. package/dist/agents/skills/codex/detect-design-drift/SKILL.md +139 -0
  35. package/dist/agents/skills/codex/detect-design-drift/skill.yaml +50 -0
  36. package/dist/agents/skills/codex/harness-accessibility/SKILL.md +10 -0
  37. package/dist/agents/skills/codex/harness-design-craft/SKILL.md +212 -0
  38. package/dist/agents/skills/codex/harness-design-craft/skill.yaml +57 -0
  39. package/dist/agents/skills/codex/harness-design-pipeline/SKILL.md +266 -0
  40. package/dist/agents/skills/codex/harness-design-pipeline/skill.yaml +70 -0
  41. package/dist/agents/skills/codex/knowledge-craft/SKILL.md +180 -0
  42. package/dist/agents/skills/codex/knowledge-craft/skill.yaml +49 -0
  43. package/dist/agents/skills/codex/naming-craft/SKILL.md +172 -0
  44. package/dist/agents/skills/codex/naming-craft/skill.yaml +51 -0
  45. package/dist/agents/skills/codex/security-craft/SKILL.md +205 -0
  46. package/dist/agents/skills/codex/security-craft/skill.yaml +58 -0
  47. package/dist/agents/skills/codex/spec-craft/SKILL.md +184 -0
  48. package/dist/agents/skills/codex/spec-craft/skill.yaml +55 -0
  49. package/dist/agents/skills/codex/test-craft/SKILL.md +212 -0
  50. package/dist/agents/skills/codex/test-craft/skill.yaml +58 -0
  51. package/dist/agents/skills/cursor/align-design-system/SKILL.md +174 -0
  52. package/dist/agents/skills/cursor/align-design-system/skill.yaml +57 -0
  53. package/dist/agents/skills/cursor/audit-brand-compliance/SKILL.md +189 -0
  54. package/dist/agents/skills/cursor/audit-brand-compliance/skill.yaml +50 -0
  55. package/dist/agents/skills/cursor/audit-component-anatomy/SKILL.md +181 -0
  56. package/dist/agents/skills/cursor/audit-component-anatomy/skill.yaml +51 -0
  57. package/dist/agents/skills/cursor/copy-craft/SKILL.md +192 -0
  58. package/dist/agents/skills/cursor/copy-craft/skill.yaml +52 -0
  59. package/dist/agents/skills/cursor/detect-design-drift/SKILL.md +139 -0
  60. package/dist/agents/skills/cursor/detect-design-drift/skill.yaml +50 -0
  61. package/dist/agents/skills/cursor/harness-accessibility/SKILL.md +10 -0
  62. package/dist/agents/skills/cursor/harness-design-craft/SKILL.md +212 -0
  63. package/dist/agents/skills/cursor/harness-design-craft/skill.yaml +57 -0
  64. package/dist/agents/skills/cursor/harness-design-pipeline/SKILL.md +266 -0
  65. package/dist/agents/skills/cursor/harness-design-pipeline/skill.yaml +70 -0
  66. package/dist/agents/skills/cursor/knowledge-craft/SKILL.md +180 -0
  67. package/dist/agents/skills/cursor/knowledge-craft/skill.yaml +49 -0
  68. package/dist/agents/skills/cursor/naming-craft/SKILL.md +172 -0
  69. package/dist/agents/skills/cursor/naming-craft/skill.yaml +51 -0
  70. package/dist/agents/skills/cursor/security-craft/SKILL.md +205 -0
  71. package/dist/agents/skills/cursor/security-craft/skill.yaml +58 -0
  72. package/dist/agents/skills/cursor/spec-craft/SKILL.md +184 -0
  73. package/dist/agents/skills/cursor/spec-craft/skill.yaml +55 -0
  74. package/dist/agents/skills/cursor/test-craft/SKILL.md +212 -0
  75. package/dist/agents/skills/cursor/test-craft/skill.yaml +58 -0
  76. package/dist/agents/skills/gemini-cli/align-design-system/SKILL.md +174 -0
  77. package/dist/agents/skills/gemini-cli/align-design-system/skill.yaml +57 -0
  78. package/dist/agents/skills/gemini-cli/audit-brand-compliance/SKILL.md +189 -0
  79. package/dist/agents/skills/gemini-cli/audit-brand-compliance/skill.yaml +50 -0
  80. package/dist/agents/skills/gemini-cli/audit-component-anatomy/SKILL.md +181 -0
  81. package/dist/agents/skills/gemini-cli/audit-component-anatomy/skill.yaml +51 -0
  82. package/dist/agents/skills/gemini-cli/copy-craft/SKILL.md +192 -0
  83. package/dist/agents/skills/gemini-cli/copy-craft/skill.yaml +52 -0
  84. package/dist/agents/skills/gemini-cli/detect-design-drift/SKILL.md +139 -0
  85. package/dist/agents/skills/gemini-cli/detect-design-drift/skill.yaml +50 -0
  86. package/dist/agents/skills/gemini-cli/harness-accessibility/SKILL.md +10 -0
  87. package/dist/agents/skills/gemini-cli/harness-design-craft/SKILL.md +212 -0
  88. package/dist/agents/skills/gemini-cli/harness-design-craft/skill.yaml +57 -0
  89. package/dist/agents/skills/gemini-cli/harness-design-pipeline/SKILL.md +266 -0
  90. package/dist/agents/skills/gemini-cli/harness-design-pipeline/skill.yaml +70 -0
  91. package/dist/agents/skills/gemini-cli/knowledge-craft/SKILL.md +180 -0
  92. package/dist/agents/skills/gemini-cli/knowledge-craft/skill.yaml +49 -0
  93. package/dist/agents/skills/gemini-cli/naming-craft/SKILL.md +172 -0
  94. package/dist/agents/skills/gemini-cli/naming-craft/skill.yaml +51 -0
  95. package/dist/agents/skills/gemini-cli/security-craft/SKILL.md +205 -0
  96. package/dist/agents/skills/gemini-cli/security-craft/skill.yaml +58 -0
  97. package/dist/agents/skills/gemini-cli/spec-craft/SKILL.md +184 -0
  98. package/dist/agents/skills/gemini-cli/spec-craft/skill.yaml +55 -0
  99. package/dist/agents/skills/gemini-cli/test-craft/SKILL.md +212 -0
  100. package/dist/agents/skills/gemini-cli/test-craft/skill.yaml +58 -0
  101. package/dist/{agents-md-2JUQ4FE2.js → agents-md-267R2NUJ.js} +4 -4
  102. package/dist/{analyzer-VY6DJVOU-4AHIJLNS.js → analyzer-VY6DJVOU-WYKV3TTW.js} +2 -2
  103. package/dist/{architecture-CXAVNB5X.js → architecture-ZTEHGIHD.js} +6 -6
  104. package/dist/{assess-project-M626SSPN.js → assess-project-OKDW3YSK.js} +2 -1
  105. package/dist/bin/harness-mcp.js +17 -17
  106. package/dist/bin/harness.js +27 -27
  107. package/dist/{check-phase-gate-XMU6LLUQ.js → check-phase-gate-YJWFDW66.js} +5 -5
  108. package/dist/{chunk-372MGNTI.js → chunk-4EGPFB7V.js} +6185 -124
  109. package/dist/{chunk-HFOB2MPQ.js → chunk-67RP7MLR.js} +3 -3
  110. package/dist/{chunk-5JNSFYZU.js → chunk-6T5AYG5S.js} +6 -6
  111. package/dist/{chunk-5XLLIYYL.js → chunk-6UHDQP2N.js} +1 -1
  112. package/dist/{chunk-YP7I25SL.js → chunk-B3B64OPD.js} +1 -1
  113. package/dist/{chunk-VTTNIZJL.js → chunk-B4OLYXZ4.js} +93 -3
  114. package/dist/{chunk-6AX6R3LM.js → chunk-CXAHK5PJ.js} +9 -9
  115. package/dist/{chunk-BCFDGOMA.js → chunk-H2ZJOJ7A.js} +81 -1
  116. package/dist/{chunk-CQOMVZDC.js → chunk-HLPY3RHE.js} +1641 -292
  117. package/dist/{chunk-Q6ZR2L6Q.js → chunk-HMMSWRWR.js} +2 -2
  118. package/dist/{chunk-YYRQCQPZ.js → chunk-IY2TZLY5.js} +176 -107
  119. package/dist/{chunk-I6K43QQS.js → chunk-MQG7FHXX.js} +3 -3
  120. package/dist/{chunk-43M3RLFQ.js → chunk-OLTVDPA2.js} +2 -2
  121. package/dist/{chunk-JFZOWO7D.js → chunk-OQE6ME2Z.js} +1 -1
  122. package/dist/{chunk-GWE5LL3R.js → chunk-P7EO7USC.js} +10 -10
  123. package/dist/{chunk-24KCOJJG.js → chunk-PARV3G2F.js} +1 -1
  124. package/dist/{chunk-QOKMDDBJ.js → chunk-QUPC37UB.js} +6 -6
  125. package/dist/{chunk-EPUKTTJZ.js → chunk-RC3OI5NK.js} +5 -1
  126. package/dist/{chunk-L5BCZ5XS.js → chunk-S7GEONXL.js} +1 -1
  127. package/dist/{chunk-5FDBXUFW.js → chunk-TIH53QXY.js} +1 -1
  128. package/dist/{chunk-OA6SWTU4.js → chunk-TIZ3L6CU.js} +11 -8
  129. package/dist/{chunk-GWF2OILZ.js → chunk-VG6UK6G6.js} +1 -1
  130. package/dist/{chunk-SZEFU6XC.js → chunk-W3PDVZ4I.js} +1 -1
  131. package/dist/{chunk-VUCGB2KH.js → chunk-WOXR6I3R.js} +1 -1
  132. package/dist/{chunk-K246XQ2L.js → chunk-XTIPZUPR.js} +1 -1
  133. package/dist/{chunk-HMW3VKUF.js → chunk-Z2GUITAS.js} +10 -10
  134. package/dist/{chunk-PFZEADQM.js → chunk-ZKA3TGYS.js} +79 -2
  135. package/dist/{ci-workflow-3JNDZQYD.js → ci-workflow-YGTQTNVC.js} +4 -4
  136. package/dist/{dist-QPWXPCPL.js → dist-R3TOOPJ7.js} +1 -1
  137. package/dist/{dist-OHDQBTSO.js → dist-XIJWWQ5N.js} +3 -3
  138. package/dist/{docs-5RYMDHN3.js → docs-KCTLXK2G.js} +6 -6
  139. package/dist/{engine-GKGT5ULT.js → engine-J64WPH5K.js} +4 -4
  140. package/dist/{entropy-DQTAPSSE.js → entropy-M27JUL3V.js} +5 -5
  141. package/dist/{feedback-WH6XPQJS.js → feedback-W25QO3OL.js} +2 -2
  142. package/dist/{generate-agent-definitions-SZA4QIHN.js → generate-agent-definitions-RNMU5U5R.js} +5 -5
  143. package/dist/{glob-helper-XE2UGEOV.js → glob-helper-EX4YZKZO.js} +1 -1
  144. package/dist/{graph-loader-EQBOIHFZ.js → graph-loader-EIFEOUVI.js} +1 -1
  145. package/dist/index.d.ts +587 -6
  146. package/dist/index.js +27 -27
  147. package/dist/{loader-BNKGM23C.js → loader-HZKJ5ABV.js} +4 -4
  148. package/dist/{mcp-YKKPWUMH.js → mcp-NEAPIDTT.js} +17 -17
  149. package/dist/{performance-54TMJOEU.js → performance-3AVQUDRG.js} +6 -6
  150. package/dist/{review-pipeline-OTDDVPNY.js → review-pipeline-KA7SGUXJ.js} +4 -4
  151. package/dist/{runtime-W5THSNAL.js → runtime-IP6FVV5M.js} +4 -4
  152. package/dist/{scan-4PPP6ZXT.js → scan-LYKLM4EQ.js} +1 -1
  153. package/dist/{security-27HW7CYT.js → security-EAR4FJWI.js} +1 -1
  154. package/dist/{validate-QRVCD4GP.js → validate-EVH3UXIC.js} +5 -5
  155. package/dist/{validate-cross-check-BUAGBAPO.js → validate-cross-check-SNE3SQOB.js} +4 -4
  156. package/package.json +8 -7
package/dist/index.d.ts CHANGED
@@ -609,30 +609,511 @@ declare const HarnessConfigSchema: z.ZodObject<{
609
609
  tokenPath: z.ZodOptional<z.ZodString>;
610
610
  /** Brief description of the intended aesthetic direction */
611
611
  aestheticIntent: z.ZodOptional<z.ZodString>;
612
+ /**
613
+ * Design-pipeline audit configuration (rule-based floor layer).
614
+ * Omit to use built-in defaults.
615
+ */
616
+ audit: z.ZodOptional<z.ZodObject<{
617
+ /** Component-anatomy audit (design-pipeline #2) */
618
+ componentAnatomy: z.ZodOptional<z.ZodObject<{
619
+ /** Gate for the entire audit AND the harness-accessibility deferral */
620
+ enabled: z.ZodDefault<z.ZodBoolean>;
621
+ /** "default" or a path to a project-supplied override catalog */
622
+ catalog: z.ZodDefault<z.ZodString>;
623
+ /** "all", "none", or an explicit list of pattern codes (e.g. ["ANAT-P001"]) */
624
+ patterns: z.ZodDefault<z.ZodUnion<[z.ZodLiteral<"all">, z.ZodLiteral<"none">, z.ZodArray<z.ZodString, "many">]>>;
625
+ /** Fast-mode controls (validate-time scope cap + pattern opt-in) */
626
+ fastMode: z.ZodDefault<z.ZodObject<{
627
+ /** Whether validate-time runs pattern queries (default false — patterns are full-mode only) */
628
+ patterns: z.ZodDefault<z.ZodBoolean>;
629
+ /** Cap to keep validate fast on large repos */
630
+ maxFiles: z.ZodDefault<z.ZodNumber>;
631
+ }, "strip", z.ZodTypeAny, {
632
+ patterns: boolean;
633
+ maxFiles: number;
634
+ }, {
635
+ patterns?: boolean | undefined;
636
+ maxFiles?: number | undefined;
637
+ }>>;
638
+ }, "strip", z.ZodTypeAny, {
639
+ enabled: boolean;
640
+ catalog: string;
641
+ patterns: string[] | "all" | "none";
642
+ fastMode: {
643
+ patterns: boolean;
644
+ maxFiles: number;
645
+ };
646
+ }, {
647
+ enabled?: boolean | undefined;
648
+ catalog?: string | undefined;
649
+ patterns?: string[] | "all" | "none" | undefined;
650
+ fastMode?: {
651
+ patterns?: boolean | undefined;
652
+ maxFiles?: number | undefined;
653
+ } | undefined;
654
+ }>>;
655
+ /** Design-system drift detection (design-pipeline #1, detect half) */
656
+ driftDetection: z.ZodOptional<z.ZodObject<{
657
+ /** Gate for the entire drift verifier */
658
+ enabled: z.ZodDefault<z.ZodBoolean>;
659
+ /** Rule toggles — defaults align with v1 scope (T* + P*) */
660
+ rules: z.ZodDefault<z.ZodObject<{
661
+ /** Token bypass rules (DRIFT-T001-T004). Default: true. */
662
+ tokenBypass: z.ZodDefault<z.ZodBoolean>;
663
+ /** Primitive adoption rules (DRIFT-P001-P004). Default: true. */
664
+ primitiveAdoption: z.ZodDefault<z.ZodBoolean>;
665
+ }, "strip", z.ZodTypeAny, {
666
+ tokenBypass: boolean;
667
+ primitiveAdoption: boolean;
668
+ }, {
669
+ tokenBypass?: boolean | undefined;
670
+ primitiveAdoption?: boolean | undefined;
671
+ }>>;
672
+ /** Fast-mode controls (validate-time scope cap) */
673
+ fastMode: z.ZodDefault<z.ZodObject<{
674
+ /** Cap to keep validate fast on large repos */
675
+ maxFiles: z.ZodDefault<z.ZodNumber>;
676
+ }, "strip", z.ZodTypeAny, {
677
+ maxFiles: number;
678
+ }, {
679
+ maxFiles?: number | undefined;
680
+ }>>;
681
+ }, "strip", z.ZodTypeAny, {
682
+ enabled: boolean;
683
+ rules: {
684
+ tokenBypass: boolean;
685
+ primitiveAdoption: boolean;
686
+ };
687
+ fastMode: {
688
+ maxFiles: number;
689
+ };
690
+ }, {
691
+ enabled?: boolean | undefined;
692
+ rules?: {
693
+ tokenBypass?: boolean | undefined;
694
+ primitiveAdoption?: boolean | undefined;
695
+ } | undefined;
696
+ fastMode?: {
697
+ maxFiles?: number | undefined;
698
+ } | undefined;
699
+ }>>;
700
+ /** Brand-compliance audit (design-pipeline #3) */
701
+ brandCompliance: z.ZodOptional<z.ZodObject<{
702
+ /** Gate for the entire brand verifier */
703
+ enabled: z.ZodDefault<z.ZodBoolean>;
704
+ /** Rule toggles — defaults align with v1 scope (BRAND-T* + BRAND-V001) */
705
+ rules: z.ZodDefault<z.ZodObject<{
706
+ /** Token-misuse rules (BRAND-T001 via $extensions.harness.brand.forbidden_contexts). Default: true. */
707
+ tokenMisuse: z.ZodDefault<z.ZodBoolean>;
708
+ /** Voice rule (BRAND-V001 forbidden phrases in JSX text + string attributes). Default: true. */
709
+ voice: z.ZodDefault<z.ZodBoolean>;
710
+ }, "strip", z.ZodTypeAny, {
711
+ tokenMisuse: boolean;
712
+ voice: boolean;
713
+ }, {
714
+ tokenMisuse?: boolean | undefined;
715
+ voice?: boolean | undefined;
716
+ }>>;
717
+ /** Fast-mode controls (validate-time scope cap) */
718
+ fastMode: z.ZodDefault<z.ZodObject<{
719
+ maxFiles: z.ZodDefault<z.ZodNumber>;
720
+ }, "strip", z.ZodTypeAny, {
721
+ maxFiles: number;
722
+ }, {
723
+ maxFiles?: number | undefined;
724
+ }>>;
725
+ }, "strip", z.ZodTypeAny, {
726
+ enabled: boolean;
727
+ rules: {
728
+ tokenMisuse: boolean;
729
+ voice: boolean;
730
+ };
731
+ fastMode: {
732
+ maxFiles: number;
733
+ };
734
+ }, {
735
+ enabled?: boolean | undefined;
736
+ rules?: {
737
+ tokenMisuse?: boolean | undefined;
738
+ voice?: boolean | undefined;
739
+ } | undefined;
740
+ fastMode?: {
741
+ maxFiles?: number | undefined;
742
+ } | undefined;
743
+ }>>;
744
+ }, "strip", z.ZodTypeAny, {
745
+ componentAnatomy?: {
746
+ enabled: boolean;
747
+ catalog: string;
748
+ patterns: string[] | "all" | "none";
749
+ fastMode: {
750
+ patterns: boolean;
751
+ maxFiles: number;
752
+ };
753
+ } | undefined;
754
+ driftDetection?: {
755
+ enabled: boolean;
756
+ rules: {
757
+ tokenBypass: boolean;
758
+ primitiveAdoption: boolean;
759
+ };
760
+ fastMode: {
761
+ maxFiles: number;
762
+ };
763
+ } | undefined;
764
+ brandCompliance?: {
765
+ enabled: boolean;
766
+ rules: {
767
+ tokenMisuse: boolean;
768
+ voice: boolean;
769
+ };
770
+ fastMode: {
771
+ maxFiles: number;
772
+ };
773
+ } | undefined;
774
+ }, {
775
+ componentAnatomy?: {
776
+ enabled?: boolean | undefined;
777
+ catalog?: string | undefined;
778
+ patterns?: string[] | "all" | "none" | undefined;
779
+ fastMode?: {
780
+ patterns?: boolean | undefined;
781
+ maxFiles?: number | undefined;
782
+ } | undefined;
783
+ } | undefined;
784
+ driftDetection?: {
785
+ enabled?: boolean | undefined;
786
+ rules?: {
787
+ tokenBypass?: boolean | undefined;
788
+ primitiveAdoption?: boolean | undefined;
789
+ } | undefined;
790
+ fastMode?: {
791
+ maxFiles?: number | undefined;
792
+ } | undefined;
793
+ } | undefined;
794
+ brandCompliance?: {
795
+ enabled?: boolean | undefined;
796
+ rules?: {
797
+ tokenMisuse?: boolean | undefined;
798
+ voice?: boolean | undefined;
799
+ } | undefined;
800
+ fastMode?: {
801
+ maxFiles?: number | undefined;
802
+ } | undefined;
803
+ } | undefined;
804
+ }>>;
805
+ /**
806
+ * Design-craft configuration (LLM-judgment ceiling layer, design-pipeline #6).
807
+ * Omit to use built-in defaults.
808
+ */
809
+ craft: z.ZodOptional<z.ZodObject<{
810
+ /** Gate for the entire skill AND the harness-design overlap deferral */
811
+ enabled: z.ZodDefault<z.ZodBoolean>;
812
+ /** Default invocation mode — "fast" (code-only LLM) or "deep" (rendered + vision-LLM) */
813
+ mode: z.ZodDefault<z.ZodEnum<["fast", "deep"]>>;
814
+ /** B' detect-and-offer behavior when preconditions missing */
815
+ autoCapture: z.ZodDefault<z.ZodEnum<["prompt", "auto", "skip"]>>;
816
+ /** LLM provider configuration */
817
+ llm: z.ZodOptional<z.ZodObject<{
818
+ provider: z.ZodDefault<z.ZodString>;
819
+ model: z.ZodDefault<z.ZodString>;
820
+ visionModel: z.ZodOptional<z.ZodString>;
821
+ }, "strip", z.ZodTypeAny, {
822
+ provider: string;
823
+ model: string;
824
+ visionModel?: string | undefined;
825
+ }, {
826
+ provider?: string | undefined;
827
+ model?: string | undefined;
828
+ visionModel?: string | undefined;
829
+ }>>;
830
+ /** Catalog scoping */
831
+ catalog: z.ZodOptional<z.ZodObject<{
832
+ path: z.ZodDefault<z.ZodString>;
833
+ rubrics: z.ZodDefault<z.ZodUnion<[z.ZodLiteral<"all">, z.ZodLiteral<"none">, z.ZodArray<z.ZodString, "many">]>>;
834
+ patterns: z.ZodDefault<z.ZodUnion<[z.ZodLiteral<"all">, z.ZodLiteral<"none">, z.ZodArray<z.ZodString, "many">]>>;
835
+ exemplars: z.ZodDefault<z.ZodUnion<[z.ZodLiteral<"all">, z.ZodLiteral<"none">, z.ZodArray<z.ZodString, "many">]>>;
836
+ }, "strip", z.ZodTypeAny, {
837
+ path: string;
838
+ patterns: string[] | "all" | "none";
839
+ rubrics: string[] | "all" | "none";
840
+ exemplars: string[] | "all" | "none";
841
+ }, {
842
+ path?: string | undefined;
843
+ patterns?: string[] | "all" | "none" | undefined;
844
+ rubrics?: string[] | "all" | "none" | undefined;
845
+ exemplars?: string[] | "all" | "none" | undefined;
846
+ }>>;
847
+ /** Signal feedback loop (CRITIQUE recurrence → pattern proposal) */
848
+ signal: z.ZodOptional<z.ZodObject<{
849
+ /** N=5 by default — emit candidate pattern proposal after this many recurrences */
850
+ proposalThreshold: z.ZodDefault<z.ZodNumber>;
851
+ }, "strip", z.ZodTypeAny, {
852
+ proposalThreshold: number;
853
+ }, {
854
+ proposalThreshold?: number | undefined;
855
+ }>>;
856
+ }, "strip", z.ZodTypeAny, {
857
+ enabled: boolean;
858
+ mode: "fast" | "deep";
859
+ autoCapture: "prompt" | "auto" | "skip";
860
+ catalog?: {
861
+ path: string;
862
+ patterns: string[] | "all" | "none";
863
+ rubrics: string[] | "all" | "none";
864
+ exemplars: string[] | "all" | "none";
865
+ } | undefined;
866
+ llm?: {
867
+ provider: string;
868
+ model: string;
869
+ visionModel?: string | undefined;
870
+ } | undefined;
871
+ signal?: {
872
+ proposalThreshold: number;
873
+ } | undefined;
874
+ }, {
875
+ enabled?: boolean | undefined;
876
+ catalog?: {
877
+ path?: string | undefined;
878
+ patterns?: string[] | "all" | "none" | undefined;
879
+ rubrics?: string[] | "all" | "none" | undefined;
880
+ exemplars?: string[] | "all" | "none" | undefined;
881
+ } | undefined;
882
+ mode?: "fast" | "deep" | undefined;
883
+ autoCapture?: "prompt" | "auto" | "skip" | undefined;
884
+ llm?: {
885
+ provider?: string | undefined;
886
+ model?: string | undefined;
887
+ visionModel?: string | undefined;
888
+ } | undefined;
889
+ signal?: {
890
+ proposalThreshold?: number | undefined;
891
+ } | undefined;
892
+ }>>;
612
893
  }, "strip", z.ZodTypeAny, {
613
894
  strictness: "strict" | "standard" | "permissive";
614
895
  platforms: ("web" | "mobile")[];
615
896
  enabled?: boolean | undefined;
616
897
  tokenPath?: string | undefined;
617
898
  aestheticIntent?: string | undefined;
899
+ audit?: {
900
+ componentAnatomy?: {
901
+ enabled: boolean;
902
+ catalog: string;
903
+ patterns: string[] | "all" | "none";
904
+ fastMode: {
905
+ patterns: boolean;
906
+ maxFiles: number;
907
+ };
908
+ } | undefined;
909
+ driftDetection?: {
910
+ enabled: boolean;
911
+ rules: {
912
+ tokenBypass: boolean;
913
+ primitiveAdoption: boolean;
914
+ };
915
+ fastMode: {
916
+ maxFiles: number;
917
+ };
918
+ } | undefined;
919
+ brandCompliance?: {
920
+ enabled: boolean;
921
+ rules: {
922
+ tokenMisuse: boolean;
923
+ voice: boolean;
924
+ };
925
+ fastMode: {
926
+ maxFiles: number;
927
+ };
928
+ } | undefined;
929
+ } | undefined;
930
+ craft?: {
931
+ enabled: boolean;
932
+ mode: "fast" | "deep";
933
+ autoCapture: "prompt" | "auto" | "skip";
934
+ catalog?: {
935
+ path: string;
936
+ patterns: string[] | "all" | "none";
937
+ rubrics: string[] | "all" | "none";
938
+ exemplars: string[] | "all" | "none";
939
+ } | undefined;
940
+ llm?: {
941
+ provider: string;
942
+ model: string;
943
+ visionModel?: string | undefined;
944
+ } | undefined;
945
+ signal?: {
946
+ proposalThreshold: number;
947
+ } | undefined;
948
+ } | undefined;
618
949
  }, {
619
950
  enabled?: boolean | undefined;
620
951
  strictness?: "strict" | "standard" | "permissive" | undefined;
621
952
  platforms?: ("web" | "mobile")[] | undefined;
622
953
  tokenPath?: string | undefined;
623
954
  aestheticIntent?: string | undefined;
955
+ audit?: {
956
+ componentAnatomy?: {
957
+ enabled?: boolean | undefined;
958
+ catalog?: string | undefined;
959
+ patterns?: string[] | "all" | "none" | undefined;
960
+ fastMode?: {
961
+ patterns?: boolean | undefined;
962
+ maxFiles?: number | undefined;
963
+ } | undefined;
964
+ } | undefined;
965
+ driftDetection?: {
966
+ enabled?: boolean | undefined;
967
+ rules?: {
968
+ tokenBypass?: boolean | undefined;
969
+ primitiveAdoption?: boolean | undefined;
970
+ } | undefined;
971
+ fastMode?: {
972
+ maxFiles?: number | undefined;
973
+ } | undefined;
974
+ } | undefined;
975
+ brandCompliance?: {
976
+ enabled?: boolean | undefined;
977
+ rules?: {
978
+ tokenMisuse?: boolean | undefined;
979
+ voice?: boolean | undefined;
980
+ } | undefined;
981
+ fastMode?: {
982
+ maxFiles?: number | undefined;
983
+ } | undefined;
984
+ } | undefined;
985
+ } | undefined;
986
+ craft?: {
987
+ enabled?: boolean | undefined;
988
+ catalog?: {
989
+ path?: string | undefined;
990
+ patterns?: string[] | "all" | "none" | undefined;
991
+ rubrics?: string[] | "all" | "none" | undefined;
992
+ exemplars?: string[] | "all" | "none" | undefined;
993
+ } | undefined;
994
+ mode?: "fast" | "deep" | undefined;
995
+ autoCapture?: "prompt" | "auto" | "skip" | undefined;
996
+ llm?: {
997
+ provider?: string | undefined;
998
+ model?: string | undefined;
999
+ visionModel?: string | undefined;
1000
+ } | undefined;
1001
+ signal?: {
1002
+ proposalThreshold?: number | undefined;
1003
+ } | undefined;
1004
+ } | undefined;
624
1005
  }>, {
625
1006
  strictness: "strict" | "standard" | "permissive";
626
1007
  platforms: ("web" | "mobile")[];
627
1008
  enabled?: boolean | undefined;
628
1009
  tokenPath?: string | undefined;
629
1010
  aestheticIntent?: string | undefined;
1011
+ audit?: {
1012
+ componentAnatomy?: {
1013
+ enabled: boolean;
1014
+ catalog: string;
1015
+ patterns: string[] | "all" | "none";
1016
+ fastMode: {
1017
+ patterns: boolean;
1018
+ maxFiles: number;
1019
+ };
1020
+ } | undefined;
1021
+ driftDetection?: {
1022
+ enabled: boolean;
1023
+ rules: {
1024
+ tokenBypass: boolean;
1025
+ primitiveAdoption: boolean;
1026
+ };
1027
+ fastMode: {
1028
+ maxFiles: number;
1029
+ };
1030
+ } | undefined;
1031
+ brandCompliance?: {
1032
+ enabled: boolean;
1033
+ rules: {
1034
+ tokenMisuse: boolean;
1035
+ voice: boolean;
1036
+ };
1037
+ fastMode: {
1038
+ maxFiles: number;
1039
+ };
1040
+ } | undefined;
1041
+ } | undefined;
1042
+ craft?: {
1043
+ enabled: boolean;
1044
+ mode: "fast" | "deep";
1045
+ autoCapture: "prompt" | "auto" | "skip";
1046
+ catalog?: {
1047
+ path: string;
1048
+ patterns: string[] | "all" | "none";
1049
+ rubrics: string[] | "all" | "none";
1050
+ exemplars: string[] | "all" | "none";
1051
+ } | undefined;
1052
+ llm?: {
1053
+ provider: string;
1054
+ model: string;
1055
+ visionModel?: string | undefined;
1056
+ } | undefined;
1057
+ signal?: {
1058
+ proposalThreshold: number;
1059
+ } | undefined;
1060
+ } | undefined;
630
1061
  }, {
631
1062
  enabled?: boolean | undefined;
632
1063
  strictness?: "strict" | "standard" | "permissive" | undefined;
633
1064
  platforms?: ("web" | "mobile")[] | undefined;
634
1065
  tokenPath?: string | undefined;
635
1066
  aestheticIntent?: string | undefined;
1067
+ audit?: {
1068
+ componentAnatomy?: {
1069
+ enabled?: boolean | undefined;
1070
+ catalog?: string | undefined;
1071
+ patterns?: string[] | "all" | "none" | undefined;
1072
+ fastMode?: {
1073
+ patterns?: boolean | undefined;
1074
+ maxFiles?: number | undefined;
1075
+ } | undefined;
1076
+ } | undefined;
1077
+ driftDetection?: {
1078
+ enabled?: boolean | undefined;
1079
+ rules?: {
1080
+ tokenBypass?: boolean | undefined;
1081
+ primitiveAdoption?: boolean | undefined;
1082
+ } | undefined;
1083
+ fastMode?: {
1084
+ maxFiles?: number | undefined;
1085
+ } | undefined;
1086
+ } | undefined;
1087
+ brandCompliance?: {
1088
+ enabled?: boolean | undefined;
1089
+ rules?: {
1090
+ tokenMisuse?: boolean | undefined;
1091
+ voice?: boolean | undefined;
1092
+ } | undefined;
1093
+ fastMode?: {
1094
+ maxFiles?: number | undefined;
1095
+ } | undefined;
1096
+ } | undefined;
1097
+ } | undefined;
1098
+ craft?: {
1099
+ enabled?: boolean | undefined;
1100
+ catalog?: {
1101
+ path?: string | undefined;
1102
+ patterns?: string[] | "all" | "none" | undefined;
1103
+ rubrics?: string[] | "all" | "none" | undefined;
1104
+ exemplars?: string[] | "all" | "none" | undefined;
1105
+ } | undefined;
1106
+ mode?: "fast" | "deep" | undefined;
1107
+ autoCapture?: "prompt" | "auto" | "skip" | undefined;
1108
+ llm?: {
1109
+ provider?: string | undefined;
1110
+ model?: string | undefined;
1111
+ visionModel?: string | undefined;
1112
+ } | undefined;
1113
+ signal?: {
1114
+ proposalThreshold?: number | undefined;
1115
+ } | undefined;
1116
+ } | undefined;
636
1117
  }>>;
637
1118
  /** Internationalization (i18n) settings */
638
1119
  i18n: z.ZodOptional<z.ZodObject<{
@@ -746,24 +1227,24 @@ declare const HarnessConfigSchema: z.ZodObject<{
746
1227
  /** Model ID to use for complex/critical analysis */
747
1228
  strong: z.ZodOptional<z.ZodString>;
748
1229
  }, "strip", z.ZodTypeAny, {
749
- standard?: string | undefined;
750
1230
  fast?: string | undefined;
1231
+ standard?: string | undefined;
751
1232
  strong?: string | undefined;
752
1233
  }, {
753
- standard?: string | undefined;
754
1234
  fast?: string | undefined;
1235
+ standard?: string | undefined;
755
1236
  strong?: string | undefined;
756
1237
  }>>;
757
1238
  }, "strip", z.ZodTypeAny, {
758
1239
  model_tiers?: {
759
- standard?: string | undefined;
760
1240
  fast?: string | undefined;
1241
+ standard?: string | undefined;
761
1242
  strong?: string | undefined;
762
1243
  } | undefined;
763
1244
  }, {
764
1245
  model_tiers?: {
765
- standard?: string | undefined;
766
1246
  fast?: string | undefined;
1247
+ standard?: string | undefined;
767
1248
  strong?: string | undefined;
768
1249
  } | undefined;
769
1250
  }>>;
@@ -1156,6 +1637,56 @@ declare const HarnessConfigSchema: z.ZodObject<{
1156
1637
  enabled?: boolean | undefined;
1157
1638
  tokenPath?: string | undefined;
1158
1639
  aestheticIntent?: string | undefined;
1640
+ audit?: {
1641
+ componentAnatomy?: {
1642
+ enabled: boolean;
1643
+ catalog: string;
1644
+ patterns: string[] | "all" | "none";
1645
+ fastMode: {
1646
+ patterns: boolean;
1647
+ maxFiles: number;
1648
+ };
1649
+ } | undefined;
1650
+ driftDetection?: {
1651
+ enabled: boolean;
1652
+ rules: {
1653
+ tokenBypass: boolean;
1654
+ primitiveAdoption: boolean;
1655
+ };
1656
+ fastMode: {
1657
+ maxFiles: number;
1658
+ };
1659
+ } | undefined;
1660
+ brandCompliance?: {
1661
+ enabled: boolean;
1662
+ rules: {
1663
+ tokenMisuse: boolean;
1664
+ voice: boolean;
1665
+ };
1666
+ fastMode: {
1667
+ maxFiles: number;
1668
+ };
1669
+ } | undefined;
1670
+ } | undefined;
1671
+ craft?: {
1672
+ enabled: boolean;
1673
+ mode: "fast" | "deep";
1674
+ autoCapture: "prompt" | "auto" | "skip";
1675
+ catalog?: {
1676
+ path: string;
1677
+ patterns: string[] | "all" | "none";
1678
+ rubrics: string[] | "all" | "none";
1679
+ exemplars: string[] | "all" | "none";
1680
+ } | undefined;
1681
+ llm?: {
1682
+ provider: string;
1683
+ model: string;
1684
+ visionModel?: string | undefined;
1685
+ } | undefined;
1686
+ signal?: {
1687
+ proposalThreshold: number;
1688
+ } | undefined;
1689
+ } | undefined;
1159
1690
  } | undefined;
1160
1691
  i18n?: {
1161
1692
  enabled: boolean;
@@ -1182,8 +1713,8 @@ declare const HarnessConfigSchema: z.ZodObject<{
1182
1713
  } | undefined;
1183
1714
  review?: {
1184
1715
  model_tiers?: {
1185
- standard?: string | undefined;
1186
1716
  fast?: string | undefined;
1717
+ standard?: string | undefined;
1187
1718
  strong?: string | undefined;
1188
1719
  } | undefined;
1189
1720
  } | undefined;
@@ -1341,6 +1872,56 @@ declare const HarnessConfigSchema: z.ZodObject<{
1341
1872
  platforms?: ("web" | "mobile")[] | undefined;
1342
1873
  tokenPath?: string | undefined;
1343
1874
  aestheticIntent?: string | undefined;
1875
+ audit?: {
1876
+ componentAnatomy?: {
1877
+ enabled?: boolean | undefined;
1878
+ catalog?: string | undefined;
1879
+ patterns?: string[] | "all" | "none" | undefined;
1880
+ fastMode?: {
1881
+ patterns?: boolean | undefined;
1882
+ maxFiles?: number | undefined;
1883
+ } | undefined;
1884
+ } | undefined;
1885
+ driftDetection?: {
1886
+ enabled?: boolean | undefined;
1887
+ rules?: {
1888
+ tokenBypass?: boolean | undefined;
1889
+ primitiveAdoption?: boolean | undefined;
1890
+ } | undefined;
1891
+ fastMode?: {
1892
+ maxFiles?: number | undefined;
1893
+ } | undefined;
1894
+ } | undefined;
1895
+ brandCompliance?: {
1896
+ enabled?: boolean | undefined;
1897
+ rules?: {
1898
+ tokenMisuse?: boolean | undefined;
1899
+ voice?: boolean | undefined;
1900
+ } | undefined;
1901
+ fastMode?: {
1902
+ maxFiles?: number | undefined;
1903
+ } | undefined;
1904
+ } | undefined;
1905
+ } | undefined;
1906
+ craft?: {
1907
+ enabled?: boolean | undefined;
1908
+ catalog?: {
1909
+ path?: string | undefined;
1910
+ patterns?: string[] | "all" | "none" | undefined;
1911
+ rubrics?: string[] | "all" | "none" | undefined;
1912
+ exemplars?: string[] | "all" | "none" | undefined;
1913
+ } | undefined;
1914
+ mode?: "fast" | "deep" | undefined;
1915
+ autoCapture?: "prompt" | "auto" | "skip" | undefined;
1916
+ llm?: {
1917
+ provider?: string | undefined;
1918
+ model?: string | undefined;
1919
+ visionModel?: string | undefined;
1920
+ } | undefined;
1921
+ signal?: {
1922
+ proposalThreshold?: number | undefined;
1923
+ } | undefined;
1924
+ } | undefined;
1344
1925
  } | undefined;
1345
1926
  i18n?: {
1346
1927
  enabled?: boolean | undefined;
@@ -1367,8 +1948,8 @@ declare const HarnessConfigSchema: z.ZodObject<{
1367
1948
  } | undefined;
1368
1949
  review?: {
1369
1950
  model_tiers?: {
1370
- standard?: string | undefined;
1371
1951
  fast?: string | undefined;
1952
+ standard?: string | undefined;
1372
1953
  strong?: string | undefined;
1373
1954
  } | undefined;
1374
1955
  } | undefined;