@lannguyensi/harness 0.6.0 → 0.8.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 (139) hide show
  1. package/CHANGELOG.md +255 -0
  2. package/README.md +189 -148
  3. package/dist/cli/apply/apply.d.ts +13 -0
  4. package/dist/cli/apply/apply.js +59 -3
  5. package/dist/cli/apply/apply.js.map +1 -1
  6. package/dist/cli/apply/generate-codex-config.d.ts +6 -0
  7. package/dist/cli/apply/generate-codex-config.js +149 -0
  8. package/dist/cli/apply/generate-codex-config.js.map +1 -0
  9. package/dist/cli/apply/generate-settings.d.ts +15 -1
  10. package/dist/cli/apply/generate-settings.js +16 -1
  11. package/dist/cli/apply/generate-settings.js.map +1 -1
  12. package/dist/cli/apply/index.d.ts +2 -1
  13. package/dist/cli/apply/index.js +2 -1
  14. package/dist/cli/apply/index.js.map +1 -1
  15. package/dist/cli/approve/understanding.d.ts +39 -0
  16. package/dist/cli/approve/understanding.js +122 -0
  17. package/dist/cli/approve/understanding.js.map +1 -0
  18. package/dist/cli/describe.d.ts +1 -1
  19. package/dist/cli/describe.js +2 -0
  20. package/dist/cli/describe.js.map +1 -1
  21. package/dist/cli/doctor/codex.d.ts +34 -0
  22. package/dist/cli/doctor/codex.js +331 -0
  23. package/dist/cli/doctor/codex.js.map +1 -0
  24. package/dist/cli/doctor/format.js +29 -1
  25. package/dist/cli/doctor/format.js.map +1 -1
  26. package/dist/cli/doctor/index.d.ts +13 -1
  27. package/dist/cli/doctor/index.js +49 -1
  28. package/dist/cli/doctor/index.js.map +1 -1
  29. package/dist/cli/doctor/types.d.ts +35 -1
  30. package/dist/cli/doctor/types.js +12 -1
  31. package/dist/cli/doctor/types.js.map +1 -1
  32. package/dist/cli/explain.d.ts +10 -1
  33. package/dist/cli/explain.js +44 -18
  34. package/dist/cli/explain.js.map +1 -1
  35. package/dist/cli/index.js +315 -8
  36. package/dist/cli/index.js.map +1 -1
  37. package/dist/cli/list.d.ts +1 -1
  38. package/dist/cli/list.js +17 -0
  39. package/dist/cli/list.js.map +1 -1
  40. package/dist/cli/pack/add.d.ts +13 -0
  41. package/dist/cli/pack/add.js +71 -0
  42. package/dist/cli/pack/add.js.map +1 -0
  43. package/dist/cli/pack/hook-codex-pre-tool-use.d.ts +30 -0
  44. package/dist/cli/pack/hook-codex-pre-tool-use.js +149 -0
  45. package/dist/cli/pack/hook-codex-pre-tool-use.js.map +1 -0
  46. package/dist/cli/pack/hook-codex-stop.d.ts +31 -0
  47. package/dist/cli/pack/hook-codex-stop.js +332 -0
  48. package/dist/cli/pack/hook-codex-stop.js.map +1 -0
  49. package/dist/cli/pack/hook-codex-user-prompt-submit.d.ts +18 -0
  50. package/dist/cli/pack/hook-codex-user-prompt-submit.js +92 -0
  51. package/dist/cli/pack/hook-codex-user-prompt-submit.js.map +1 -0
  52. package/dist/cli/pack/hook-pre-tool-use.d.ts +32 -0
  53. package/dist/cli/pack/hook-pre-tool-use.js +181 -0
  54. package/dist/cli/pack/hook-pre-tool-use.js.map +1 -0
  55. package/dist/cli/pack/index.d.ts +4 -0
  56. package/dist/cli/pack/index.js +5 -0
  57. package/dist/cli/pack/index.js.map +1 -0
  58. package/dist/cli/pack/list.d.ts +10 -0
  59. package/dist/cli/pack/list.js +43 -0
  60. package/dist/cli/pack/list.js.map +1 -0
  61. package/dist/cli/pack/mutate.d.ts +14 -0
  62. package/dist/cli/pack/mutate.js +76 -0
  63. package/dist/cli/pack/mutate.js.map +1 -0
  64. package/dist/cli/pack/remove.d.ts +15 -0
  65. package/dist/cli/pack/remove.js +153 -0
  66. package/dist/cli/pack/remove.js.map +1 -0
  67. package/dist/cli/session-export/index.d.ts +46 -0
  68. package/dist/cli/session-export/index.js +169 -0
  69. package/dist/cli/session-export/index.js.map +1 -0
  70. package/dist/cli/session-export/redact.d.ts +22 -0
  71. package/dist/cli/session-export/redact.js +47 -0
  72. package/dist/cli/session-export/redact.js.map +1 -0
  73. package/dist/cli/session-export/transcript.d.ts +24 -0
  74. package/dist/cli/session-export/transcript.js +162 -0
  75. package/dist/cli/session-export/transcript.js.map +1 -0
  76. package/dist/cli/validate/checks.js +32 -0
  77. package/dist/cli/validate/checks.js.map +1 -1
  78. package/dist/policies/ledger-client.js +2 -1
  79. package/dist/policies/ledger-client.js.map +1 -1
  80. package/dist/policy-packs/builtin/permission-profiles.d.ts +11 -0
  81. package/dist/policy-packs/builtin/permission-profiles.js +74 -0
  82. package/dist/policy-packs/builtin/permission-profiles.js.map +1 -0
  83. package/dist/policy-packs/builtin/understanding-before-execution-runtime.d.ts +56 -0
  84. package/dist/policy-packs/builtin/understanding-before-execution-runtime.js +186 -0
  85. package/dist/policy-packs/builtin/understanding-before-execution-runtime.js.map +1 -0
  86. package/dist/policy-packs/builtin/understanding-before-execution.d.ts +15 -0
  87. package/dist/policy-packs/builtin/understanding-before-execution.js +254 -0
  88. package/dist/policy-packs/builtin/understanding-before-execution.js.map +1 -0
  89. package/dist/policy-packs/expand.d.ts +4 -0
  90. package/dist/policy-packs/expand.js +90 -0
  91. package/dist/policy-packs/expand.js.map +1 -0
  92. package/dist/policy-packs/index.d.ts +5 -0
  93. package/dist/policy-packs/index.js +5 -0
  94. package/dist/policy-packs/index.js.map +1 -0
  95. package/dist/policy-packs/permission-translator.d.ts +9 -0
  96. package/dist/policy-packs/permission-translator.js +76 -0
  97. package/dist/policy-packs/permission-translator.js.map +1 -0
  98. package/dist/policy-packs/registry.d.ts +11 -0
  99. package/dist/policy-packs/registry.js +20 -0
  100. package/dist/policy-packs/registry.js.map +1 -0
  101. package/dist/policy-packs/runtime.d.ts +8 -0
  102. package/dist/policy-packs/runtime.js +30 -0
  103. package/dist/policy-packs/runtime.js.map +1 -0
  104. package/dist/policy-packs/source.d.ts +6 -0
  105. package/dist/policy-packs/source.js +10 -0
  106. package/dist/policy-packs/source.js.map +1 -0
  107. package/dist/policy-packs/types.d.ts +41 -0
  108. package/dist/policy-packs/types.js +11 -0
  109. package/dist/policy-packs/types.js.map +1 -0
  110. package/dist/probes/mcp.js +2 -1
  111. package/dist/probes/mcp.js.map +1 -1
  112. package/dist/runtime/index.d.ts +1 -0
  113. package/dist/runtime/index.js +1 -0
  114. package/dist/runtime/index.js.map +1 -1
  115. package/dist/runtime/ledger-add.d.ts +16 -0
  116. package/dist/runtime/ledger-add.js +139 -0
  117. package/dist/runtime/ledger-add.js.map +1 -0
  118. package/dist/runtime/ledger-record.js +2 -1
  119. package/dist/runtime/ledger-record.js.map +1 -1
  120. package/dist/schema/audit.d.ts +71 -0
  121. package/dist/schema/audit.js +32 -0
  122. package/dist/schema/audit.js.map +1 -0
  123. package/dist/schema/index.d.ts +1893 -10
  124. package/dist/schema/index.js +27 -0
  125. package/dist/schema/index.js.map +1 -1
  126. package/dist/schema/permission-profiles.d.ts +2161 -0
  127. package/dist/schema/permission-profiles.js +60 -0
  128. package/dist/schema/permission-profiles.js.map +1 -0
  129. package/dist/schema/policy-packs.d.ts +52 -0
  130. package/dist/schema/policy-packs.js +35 -0
  131. package/dist/schema/policy-packs.js.map +1 -0
  132. package/dist/schema/tools.d.ts +8 -8
  133. package/dist/schema/workflows.d.ts +519 -0
  134. package/dist/schema/workflows.js +81 -0
  135. package/dist/schema/workflows.js.map +1 -0
  136. package/dist/version.d.ts +1 -0
  137. package/dist/version.js +3 -0
  138. package/dist/version.js.map +1 -0
  139. package/package.json +1 -1
@@ -88,16 +88,16 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
88
88
  required: z.ZodDefault<z.ZodBoolean>;
89
89
  }, "strict", z.ZodTypeAny, {
90
90
  name: string;
91
- binary: string;
92
91
  required: boolean;
92
+ binary: string;
93
93
  min_version?: string | undefined;
94
94
  version_command?: string[] | undefined;
95
95
  }, {
96
96
  name: string;
97
97
  binary: string;
98
+ required?: boolean | undefined;
98
99
  min_version?: string | undefined;
99
100
  version_command?: string[] | undefined;
100
- required?: boolean | undefined;
101
101
  }>, "many">>;
102
102
  skills: z.ZodDefault<z.ZodEffects<z.ZodObject<{
103
103
  enabled: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
@@ -143,8 +143,8 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
143
143
  }[];
144
144
  cli: {
145
145
  name: string;
146
- binary: string;
147
146
  required: boolean;
147
+ binary: string;
148
148
  min_version?: string | undefined;
149
149
  version_command?: string[] | undefined;
150
150
  }[];
@@ -170,9 +170,9 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
170
170
  cli?: {
171
171
  name: string;
172
172
  binary: string;
173
+ required?: boolean | undefined;
173
174
  min_version?: string | undefined;
174
175
  version_command?: string[] | undefined;
175
- required?: boolean | undefined;
176
176
  }[] | undefined;
177
177
  skills?: {
178
178
  enabled?: string[] | undefined;
@@ -195,8 +195,8 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
195
195
  }[];
196
196
  cli: {
197
197
  name: string;
198
- binary: string;
199
198
  required: boolean;
199
+ binary: string;
200
200
  min_version?: string | undefined;
201
201
  version_command?: string[] | undefined;
202
202
  }[];
@@ -222,9 +222,9 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
222
222
  cli?: {
223
223
  name: string;
224
224
  binary: string;
225
+ required?: boolean | undefined;
225
226
  min_version?: string | undefined;
226
227
  version_command?: string[] | undefined;
227
- required?: boolean | undefined;
228
228
  }[] | undefined;
229
229
  skills?: {
230
230
  enabled?: string[] | undefined;
@@ -581,6 +581,1329 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
581
581
  hook: string;
582
582
  enforcement: "warn" | "block";
583
583
  }[]>>;
584
+ policy_packs: z.ZodDefault<z.ZodEffects<z.ZodArray<z.ZodObject<{
585
+ name: z.ZodString;
586
+ source: z.ZodDefault<z.ZodString>;
587
+ enabled: z.ZodDefault<z.ZodBoolean>;
588
+ description: z.ZodOptional<z.ZodString>;
589
+ config: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
590
+ }, "strict", z.ZodTypeAny, {
591
+ name: string;
592
+ enabled: boolean;
593
+ source: string;
594
+ config: Record<string, unknown>;
595
+ description?: string | undefined;
596
+ }, {
597
+ name: string;
598
+ description?: string | undefined;
599
+ enabled?: boolean | undefined;
600
+ source?: string | undefined;
601
+ config?: Record<string, unknown> | undefined;
602
+ }>, "many">, {
603
+ name: string;
604
+ enabled: boolean;
605
+ source: string;
606
+ config: Record<string, unknown>;
607
+ description?: string | undefined;
608
+ }[], {
609
+ name: string;
610
+ description?: string | undefined;
611
+ enabled?: boolean | undefined;
612
+ source?: string | undefined;
613
+ config?: Record<string, unknown> | undefined;
614
+ }[]>>;
615
+ permission_profiles: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
616
+ description: z.ZodOptional<z.ZodString>;
617
+ actions: z.ZodDefault<z.ZodObject<{
618
+ read: z.ZodOptional<z.ZodObject<{
619
+ allow: z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false", "ask", "limited", "ask_or_deny"]>]>, "true" | "false" | "ask" | "limited" | "ask_or_deny", boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny">;
620
+ mode: z.ZodOptional<z.ZodString>;
621
+ requires: z.ZodOptional<z.ZodObject<{
622
+ ledger_tag: z.ZodString;
623
+ within: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
624
+ count: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
625
+ min: z.ZodOptional<z.ZodNumber>;
626
+ max: z.ZodOptional<z.ZodNumber>;
627
+ exact: z.ZodOptional<z.ZodNumber>;
628
+ }, "strict", z.ZodTypeAny, {
629
+ exact?: number | undefined;
630
+ min?: number | undefined;
631
+ max?: number | undefined;
632
+ }, {
633
+ exact?: number | undefined;
634
+ min?: number | undefined;
635
+ max?: number | undefined;
636
+ }>, {
637
+ exact?: number | undefined;
638
+ min?: number | undefined;
639
+ max?: number | undefined;
640
+ }, {
641
+ exact?: number | undefined;
642
+ min?: number | undefined;
643
+ max?: number | undefined;
644
+ }>, {
645
+ exact?: number | undefined;
646
+ min?: number | undefined;
647
+ max?: number | undefined;
648
+ }, {
649
+ exact?: number | undefined;
650
+ min?: number | undefined;
651
+ max?: number | undefined;
652
+ }>, {
653
+ exact?: number | undefined;
654
+ min?: number | undefined;
655
+ max?: number | undefined;
656
+ }, {
657
+ exact?: number | undefined;
658
+ min?: number | undefined;
659
+ max?: number | undefined;
660
+ }>, {
661
+ exact?: number | undefined;
662
+ min?: number | undefined;
663
+ max?: number | undefined;
664
+ }, {
665
+ exact?: number | undefined;
666
+ min?: number | undefined;
667
+ max?: number | undefined;
668
+ }>>;
669
+ }, "strict", z.ZodTypeAny, {
670
+ ledger_tag: string;
671
+ within?: string | undefined;
672
+ count?: {
673
+ exact?: number | undefined;
674
+ min?: number | undefined;
675
+ max?: number | undefined;
676
+ } | undefined;
677
+ }, {
678
+ ledger_tag: string;
679
+ within?: string | undefined;
680
+ count?: {
681
+ exact?: number | undefined;
682
+ min?: number | undefined;
683
+ max?: number | undefined;
684
+ } | undefined;
685
+ }>>;
686
+ }, "strict", z.ZodTypeAny, {
687
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
688
+ requires?: {
689
+ ledger_tag: string;
690
+ within?: string | undefined;
691
+ count?: {
692
+ exact?: number | undefined;
693
+ min?: number | undefined;
694
+ max?: number | undefined;
695
+ } | undefined;
696
+ } | undefined;
697
+ mode?: string | undefined;
698
+ }, {
699
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
700
+ requires?: {
701
+ ledger_tag: string;
702
+ within?: string | undefined;
703
+ count?: {
704
+ exact?: number | undefined;
705
+ min?: number | undefined;
706
+ max?: number | undefined;
707
+ } | undefined;
708
+ } | undefined;
709
+ mode?: string | undefined;
710
+ }>>;
711
+ edit: z.ZodOptional<z.ZodObject<{
712
+ allow: z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false", "ask", "limited", "ask_or_deny"]>]>, "true" | "false" | "ask" | "limited" | "ask_or_deny", boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny">;
713
+ mode: z.ZodOptional<z.ZodString>;
714
+ requires: z.ZodOptional<z.ZodObject<{
715
+ ledger_tag: z.ZodString;
716
+ within: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
717
+ count: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
718
+ min: z.ZodOptional<z.ZodNumber>;
719
+ max: z.ZodOptional<z.ZodNumber>;
720
+ exact: z.ZodOptional<z.ZodNumber>;
721
+ }, "strict", z.ZodTypeAny, {
722
+ exact?: number | undefined;
723
+ min?: number | undefined;
724
+ max?: number | undefined;
725
+ }, {
726
+ exact?: number | undefined;
727
+ min?: number | undefined;
728
+ max?: number | undefined;
729
+ }>, {
730
+ exact?: number | undefined;
731
+ min?: number | undefined;
732
+ max?: number | undefined;
733
+ }, {
734
+ exact?: number | undefined;
735
+ min?: number | undefined;
736
+ max?: number | undefined;
737
+ }>, {
738
+ exact?: number | undefined;
739
+ min?: number | undefined;
740
+ max?: number | undefined;
741
+ }, {
742
+ exact?: number | undefined;
743
+ min?: number | undefined;
744
+ max?: number | undefined;
745
+ }>, {
746
+ exact?: number | undefined;
747
+ min?: number | undefined;
748
+ max?: number | undefined;
749
+ }, {
750
+ exact?: number | undefined;
751
+ min?: number | undefined;
752
+ max?: number | undefined;
753
+ }>, {
754
+ exact?: number | undefined;
755
+ min?: number | undefined;
756
+ max?: number | undefined;
757
+ }, {
758
+ exact?: number | undefined;
759
+ min?: number | undefined;
760
+ max?: number | undefined;
761
+ }>>;
762
+ }, "strict", z.ZodTypeAny, {
763
+ ledger_tag: string;
764
+ within?: string | undefined;
765
+ count?: {
766
+ exact?: number | undefined;
767
+ min?: number | undefined;
768
+ max?: number | undefined;
769
+ } | undefined;
770
+ }, {
771
+ ledger_tag: string;
772
+ within?: string | undefined;
773
+ count?: {
774
+ exact?: number | undefined;
775
+ min?: number | undefined;
776
+ max?: number | undefined;
777
+ } | undefined;
778
+ }>>;
779
+ }, "strict", z.ZodTypeAny, {
780
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
781
+ requires?: {
782
+ ledger_tag: string;
783
+ within?: string | undefined;
784
+ count?: {
785
+ exact?: number | undefined;
786
+ min?: number | undefined;
787
+ max?: number | undefined;
788
+ } | undefined;
789
+ } | undefined;
790
+ mode?: string | undefined;
791
+ }, {
792
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
793
+ requires?: {
794
+ ledger_tag: string;
795
+ within?: string | undefined;
796
+ count?: {
797
+ exact?: number | undefined;
798
+ min?: number | undefined;
799
+ max?: number | undefined;
800
+ } | undefined;
801
+ } | undefined;
802
+ mode?: string | undefined;
803
+ }>>;
804
+ bash: z.ZodOptional<z.ZodObject<{
805
+ allow: z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false", "ask", "limited", "ask_or_deny"]>]>, "true" | "false" | "ask" | "limited" | "ask_or_deny", boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny">;
806
+ mode: z.ZodOptional<z.ZodString>;
807
+ requires: z.ZodOptional<z.ZodObject<{
808
+ ledger_tag: z.ZodString;
809
+ within: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
810
+ count: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
811
+ min: z.ZodOptional<z.ZodNumber>;
812
+ max: z.ZodOptional<z.ZodNumber>;
813
+ exact: z.ZodOptional<z.ZodNumber>;
814
+ }, "strict", z.ZodTypeAny, {
815
+ exact?: number | undefined;
816
+ min?: number | undefined;
817
+ max?: number | undefined;
818
+ }, {
819
+ exact?: number | undefined;
820
+ min?: number | undefined;
821
+ max?: number | undefined;
822
+ }>, {
823
+ exact?: number | undefined;
824
+ min?: number | undefined;
825
+ max?: number | undefined;
826
+ }, {
827
+ exact?: number | undefined;
828
+ min?: number | undefined;
829
+ max?: number | undefined;
830
+ }>, {
831
+ exact?: number | undefined;
832
+ min?: number | undefined;
833
+ max?: number | undefined;
834
+ }, {
835
+ exact?: number | undefined;
836
+ min?: number | undefined;
837
+ max?: number | undefined;
838
+ }>, {
839
+ exact?: number | undefined;
840
+ min?: number | undefined;
841
+ max?: number | undefined;
842
+ }, {
843
+ exact?: number | undefined;
844
+ min?: number | undefined;
845
+ max?: number | undefined;
846
+ }>, {
847
+ exact?: number | undefined;
848
+ min?: number | undefined;
849
+ max?: number | undefined;
850
+ }, {
851
+ exact?: number | undefined;
852
+ min?: number | undefined;
853
+ max?: number | undefined;
854
+ }>>;
855
+ }, "strict", z.ZodTypeAny, {
856
+ ledger_tag: string;
857
+ within?: string | undefined;
858
+ count?: {
859
+ exact?: number | undefined;
860
+ min?: number | undefined;
861
+ max?: number | undefined;
862
+ } | undefined;
863
+ }, {
864
+ ledger_tag: string;
865
+ within?: string | undefined;
866
+ count?: {
867
+ exact?: number | undefined;
868
+ min?: number | undefined;
869
+ max?: number | undefined;
870
+ } | undefined;
871
+ }>>;
872
+ }, "strict", z.ZodTypeAny, {
873
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
874
+ requires?: {
875
+ ledger_tag: string;
876
+ within?: string | undefined;
877
+ count?: {
878
+ exact?: number | undefined;
879
+ min?: number | undefined;
880
+ max?: number | undefined;
881
+ } | undefined;
882
+ } | undefined;
883
+ mode?: string | undefined;
884
+ }, {
885
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
886
+ requires?: {
887
+ ledger_tag: string;
888
+ within?: string | undefined;
889
+ count?: {
890
+ exact?: number | undefined;
891
+ min?: number | undefined;
892
+ max?: number | undefined;
893
+ } | undefined;
894
+ } | undefined;
895
+ mode?: string | undefined;
896
+ }>>;
897
+ commit: z.ZodOptional<z.ZodObject<{
898
+ allow: z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false", "ask", "limited", "ask_or_deny"]>]>, "true" | "false" | "ask" | "limited" | "ask_or_deny", boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny">;
899
+ mode: z.ZodOptional<z.ZodString>;
900
+ requires: z.ZodOptional<z.ZodObject<{
901
+ ledger_tag: z.ZodString;
902
+ within: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
903
+ count: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
904
+ min: z.ZodOptional<z.ZodNumber>;
905
+ max: z.ZodOptional<z.ZodNumber>;
906
+ exact: z.ZodOptional<z.ZodNumber>;
907
+ }, "strict", z.ZodTypeAny, {
908
+ exact?: number | undefined;
909
+ min?: number | undefined;
910
+ max?: number | undefined;
911
+ }, {
912
+ exact?: number | undefined;
913
+ min?: number | undefined;
914
+ max?: number | undefined;
915
+ }>, {
916
+ exact?: number | undefined;
917
+ min?: number | undefined;
918
+ max?: number | undefined;
919
+ }, {
920
+ exact?: number | undefined;
921
+ min?: number | undefined;
922
+ max?: number | undefined;
923
+ }>, {
924
+ exact?: number | undefined;
925
+ min?: number | undefined;
926
+ max?: number | undefined;
927
+ }, {
928
+ exact?: number | undefined;
929
+ min?: number | undefined;
930
+ max?: number | undefined;
931
+ }>, {
932
+ exact?: number | undefined;
933
+ min?: number | undefined;
934
+ max?: number | undefined;
935
+ }, {
936
+ exact?: number | undefined;
937
+ min?: number | undefined;
938
+ max?: number | undefined;
939
+ }>, {
940
+ exact?: number | undefined;
941
+ min?: number | undefined;
942
+ max?: number | undefined;
943
+ }, {
944
+ exact?: number | undefined;
945
+ min?: number | undefined;
946
+ max?: number | undefined;
947
+ }>>;
948
+ }, "strict", z.ZodTypeAny, {
949
+ ledger_tag: string;
950
+ within?: string | undefined;
951
+ count?: {
952
+ exact?: number | undefined;
953
+ min?: number | undefined;
954
+ max?: number | undefined;
955
+ } | undefined;
956
+ }, {
957
+ ledger_tag: string;
958
+ within?: string | undefined;
959
+ count?: {
960
+ exact?: number | undefined;
961
+ min?: number | undefined;
962
+ max?: number | undefined;
963
+ } | undefined;
964
+ }>>;
965
+ }, "strict", z.ZodTypeAny, {
966
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
967
+ requires?: {
968
+ ledger_tag: string;
969
+ within?: string | undefined;
970
+ count?: {
971
+ exact?: number | undefined;
972
+ min?: number | undefined;
973
+ max?: number | undefined;
974
+ } | undefined;
975
+ } | undefined;
976
+ mode?: string | undefined;
977
+ }, {
978
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
979
+ requires?: {
980
+ ledger_tag: string;
981
+ within?: string | undefined;
982
+ count?: {
983
+ exact?: number | undefined;
984
+ min?: number | undefined;
985
+ max?: number | undefined;
986
+ } | undefined;
987
+ } | undefined;
988
+ mode?: string | undefined;
989
+ }>>;
990
+ push: z.ZodOptional<z.ZodObject<{
991
+ allow: z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false", "ask", "limited", "ask_or_deny"]>]>, "true" | "false" | "ask" | "limited" | "ask_or_deny", boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny">;
992
+ mode: z.ZodOptional<z.ZodString>;
993
+ requires: z.ZodOptional<z.ZodObject<{
994
+ ledger_tag: z.ZodString;
995
+ within: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
996
+ count: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
997
+ min: z.ZodOptional<z.ZodNumber>;
998
+ max: z.ZodOptional<z.ZodNumber>;
999
+ exact: z.ZodOptional<z.ZodNumber>;
1000
+ }, "strict", z.ZodTypeAny, {
1001
+ exact?: number | undefined;
1002
+ min?: number | undefined;
1003
+ max?: number | undefined;
1004
+ }, {
1005
+ exact?: number | undefined;
1006
+ min?: number | undefined;
1007
+ max?: number | undefined;
1008
+ }>, {
1009
+ exact?: number | undefined;
1010
+ min?: number | undefined;
1011
+ max?: number | undefined;
1012
+ }, {
1013
+ exact?: number | undefined;
1014
+ min?: number | undefined;
1015
+ max?: number | undefined;
1016
+ }>, {
1017
+ exact?: number | undefined;
1018
+ min?: number | undefined;
1019
+ max?: number | undefined;
1020
+ }, {
1021
+ exact?: number | undefined;
1022
+ min?: number | undefined;
1023
+ max?: number | undefined;
1024
+ }>, {
1025
+ exact?: number | undefined;
1026
+ min?: number | undefined;
1027
+ max?: number | undefined;
1028
+ }, {
1029
+ exact?: number | undefined;
1030
+ min?: number | undefined;
1031
+ max?: number | undefined;
1032
+ }>, {
1033
+ exact?: number | undefined;
1034
+ min?: number | undefined;
1035
+ max?: number | undefined;
1036
+ }, {
1037
+ exact?: number | undefined;
1038
+ min?: number | undefined;
1039
+ max?: number | undefined;
1040
+ }>>;
1041
+ }, "strict", z.ZodTypeAny, {
1042
+ ledger_tag: string;
1043
+ within?: string | undefined;
1044
+ count?: {
1045
+ exact?: number | undefined;
1046
+ min?: number | undefined;
1047
+ max?: number | undefined;
1048
+ } | undefined;
1049
+ }, {
1050
+ ledger_tag: string;
1051
+ within?: string | undefined;
1052
+ count?: {
1053
+ exact?: number | undefined;
1054
+ min?: number | undefined;
1055
+ max?: number | undefined;
1056
+ } | undefined;
1057
+ }>>;
1058
+ }, "strict", z.ZodTypeAny, {
1059
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1060
+ requires?: {
1061
+ ledger_tag: string;
1062
+ within?: string | undefined;
1063
+ count?: {
1064
+ exact?: number | undefined;
1065
+ min?: number | undefined;
1066
+ max?: number | undefined;
1067
+ } | undefined;
1068
+ } | undefined;
1069
+ mode?: string | undefined;
1070
+ }, {
1071
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1072
+ requires?: {
1073
+ ledger_tag: string;
1074
+ within?: string | undefined;
1075
+ count?: {
1076
+ exact?: number | undefined;
1077
+ min?: number | undefined;
1078
+ max?: number | undefined;
1079
+ } | undefined;
1080
+ } | undefined;
1081
+ mode?: string | undefined;
1082
+ }>>;
1083
+ pr: z.ZodOptional<z.ZodObject<{
1084
+ allow: z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false", "ask", "limited", "ask_or_deny"]>]>, "true" | "false" | "ask" | "limited" | "ask_or_deny", boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny">;
1085
+ mode: z.ZodOptional<z.ZodString>;
1086
+ requires: z.ZodOptional<z.ZodObject<{
1087
+ ledger_tag: z.ZodString;
1088
+ within: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
1089
+ count: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
1090
+ min: z.ZodOptional<z.ZodNumber>;
1091
+ max: z.ZodOptional<z.ZodNumber>;
1092
+ exact: z.ZodOptional<z.ZodNumber>;
1093
+ }, "strict", z.ZodTypeAny, {
1094
+ exact?: number | undefined;
1095
+ min?: number | undefined;
1096
+ max?: number | undefined;
1097
+ }, {
1098
+ exact?: number | undefined;
1099
+ min?: number | undefined;
1100
+ max?: number | undefined;
1101
+ }>, {
1102
+ exact?: number | undefined;
1103
+ min?: number | undefined;
1104
+ max?: number | undefined;
1105
+ }, {
1106
+ exact?: number | undefined;
1107
+ min?: number | undefined;
1108
+ max?: number | undefined;
1109
+ }>, {
1110
+ exact?: number | undefined;
1111
+ min?: number | undefined;
1112
+ max?: number | undefined;
1113
+ }, {
1114
+ exact?: number | undefined;
1115
+ min?: number | undefined;
1116
+ max?: number | undefined;
1117
+ }>, {
1118
+ exact?: number | undefined;
1119
+ min?: number | undefined;
1120
+ max?: number | undefined;
1121
+ }, {
1122
+ exact?: number | undefined;
1123
+ min?: number | undefined;
1124
+ max?: number | undefined;
1125
+ }>, {
1126
+ exact?: number | undefined;
1127
+ min?: number | undefined;
1128
+ max?: number | undefined;
1129
+ }, {
1130
+ exact?: number | undefined;
1131
+ min?: number | undefined;
1132
+ max?: number | undefined;
1133
+ }>>;
1134
+ }, "strict", z.ZodTypeAny, {
1135
+ ledger_tag: string;
1136
+ within?: string | undefined;
1137
+ count?: {
1138
+ exact?: number | undefined;
1139
+ min?: number | undefined;
1140
+ max?: number | undefined;
1141
+ } | undefined;
1142
+ }, {
1143
+ ledger_tag: string;
1144
+ within?: string | undefined;
1145
+ count?: {
1146
+ exact?: number | undefined;
1147
+ min?: number | undefined;
1148
+ max?: number | undefined;
1149
+ } | undefined;
1150
+ }>>;
1151
+ }, "strict", z.ZodTypeAny, {
1152
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1153
+ requires?: {
1154
+ ledger_tag: string;
1155
+ within?: string | undefined;
1156
+ count?: {
1157
+ exact?: number | undefined;
1158
+ min?: number | undefined;
1159
+ max?: number | undefined;
1160
+ } | undefined;
1161
+ } | undefined;
1162
+ mode?: string | undefined;
1163
+ }, {
1164
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1165
+ requires?: {
1166
+ ledger_tag: string;
1167
+ within?: string | undefined;
1168
+ count?: {
1169
+ exact?: number | undefined;
1170
+ min?: number | undefined;
1171
+ max?: number | undefined;
1172
+ } | undefined;
1173
+ } | undefined;
1174
+ mode?: string | undefined;
1175
+ }>>;
1176
+ deploy: z.ZodOptional<z.ZodObject<{
1177
+ allow: z.ZodEffects<z.ZodUnion<[z.ZodBoolean, z.ZodEnum<["true", "false", "ask", "limited", "ask_or_deny"]>]>, "true" | "false" | "ask" | "limited" | "ask_or_deny", boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny">;
1178
+ mode: z.ZodOptional<z.ZodString>;
1179
+ requires: z.ZodOptional<z.ZodObject<{
1180
+ ledger_tag: z.ZodString;
1181
+ within: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
1182
+ count: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodObject<{
1183
+ min: z.ZodOptional<z.ZodNumber>;
1184
+ max: z.ZodOptional<z.ZodNumber>;
1185
+ exact: z.ZodOptional<z.ZodNumber>;
1186
+ }, "strict", z.ZodTypeAny, {
1187
+ exact?: number | undefined;
1188
+ min?: number | undefined;
1189
+ max?: number | undefined;
1190
+ }, {
1191
+ exact?: number | undefined;
1192
+ min?: number | undefined;
1193
+ max?: number | undefined;
1194
+ }>, {
1195
+ exact?: number | undefined;
1196
+ min?: number | undefined;
1197
+ max?: number | undefined;
1198
+ }, {
1199
+ exact?: number | undefined;
1200
+ min?: number | undefined;
1201
+ max?: number | undefined;
1202
+ }>, {
1203
+ exact?: number | undefined;
1204
+ min?: number | undefined;
1205
+ max?: number | undefined;
1206
+ }, {
1207
+ exact?: number | undefined;
1208
+ min?: number | undefined;
1209
+ max?: number | undefined;
1210
+ }>, {
1211
+ exact?: number | undefined;
1212
+ min?: number | undefined;
1213
+ max?: number | undefined;
1214
+ }, {
1215
+ exact?: number | undefined;
1216
+ min?: number | undefined;
1217
+ max?: number | undefined;
1218
+ }>, {
1219
+ exact?: number | undefined;
1220
+ min?: number | undefined;
1221
+ max?: number | undefined;
1222
+ }, {
1223
+ exact?: number | undefined;
1224
+ min?: number | undefined;
1225
+ max?: number | undefined;
1226
+ }>>;
1227
+ }, "strict", z.ZodTypeAny, {
1228
+ ledger_tag: string;
1229
+ within?: string | undefined;
1230
+ count?: {
1231
+ exact?: number | undefined;
1232
+ min?: number | undefined;
1233
+ max?: number | undefined;
1234
+ } | undefined;
1235
+ }, {
1236
+ ledger_tag: string;
1237
+ within?: string | undefined;
1238
+ count?: {
1239
+ exact?: number | undefined;
1240
+ min?: number | undefined;
1241
+ max?: number | undefined;
1242
+ } | undefined;
1243
+ }>>;
1244
+ }, "strict", z.ZodTypeAny, {
1245
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1246
+ requires?: {
1247
+ ledger_tag: string;
1248
+ within?: string | undefined;
1249
+ count?: {
1250
+ exact?: number | undefined;
1251
+ min?: number | undefined;
1252
+ max?: number | undefined;
1253
+ } | undefined;
1254
+ } | undefined;
1255
+ mode?: string | undefined;
1256
+ }, {
1257
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1258
+ requires?: {
1259
+ ledger_tag: string;
1260
+ within?: string | undefined;
1261
+ count?: {
1262
+ exact?: number | undefined;
1263
+ min?: number | undefined;
1264
+ max?: number | undefined;
1265
+ } | undefined;
1266
+ } | undefined;
1267
+ mode?: string | undefined;
1268
+ }>>;
1269
+ }, "strict", z.ZodTypeAny, {
1270
+ push?: {
1271
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1272
+ requires?: {
1273
+ ledger_tag: string;
1274
+ within?: string | undefined;
1275
+ count?: {
1276
+ exact?: number | undefined;
1277
+ min?: number | undefined;
1278
+ max?: number | undefined;
1279
+ } | undefined;
1280
+ } | undefined;
1281
+ mode?: string | undefined;
1282
+ } | undefined;
1283
+ read?: {
1284
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1285
+ requires?: {
1286
+ ledger_tag: string;
1287
+ within?: string | undefined;
1288
+ count?: {
1289
+ exact?: number | undefined;
1290
+ min?: number | undefined;
1291
+ max?: number | undefined;
1292
+ } | undefined;
1293
+ } | undefined;
1294
+ mode?: string | undefined;
1295
+ } | undefined;
1296
+ edit?: {
1297
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1298
+ requires?: {
1299
+ ledger_tag: string;
1300
+ within?: string | undefined;
1301
+ count?: {
1302
+ exact?: number | undefined;
1303
+ min?: number | undefined;
1304
+ max?: number | undefined;
1305
+ } | undefined;
1306
+ } | undefined;
1307
+ mode?: string | undefined;
1308
+ } | undefined;
1309
+ bash?: {
1310
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1311
+ requires?: {
1312
+ ledger_tag: string;
1313
+ within?: string | undefined;
1314
+ count?: {
1315
+ exact?: number | undefined;
1316
+ min?: number | undefined;
1317
+ max?: number | undefined;
1318
+ } | undefined;
1319
+ } | undefined;
1320
+ mode?: string | undefined;
1321
+ } | undefined;
1322
+ commit?: {
1323
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1324
+ requires?: {
1325
+ ledger_tag: string;
1326
+ within?: string | undefined;
1327
+ count?: {
1328
+ exact?: number | undefined;
1329
+ min?: number | undefined;
1330
+ max?: number | undefined;
1331
+ } | undefined;
1332
+ } | undefined;
1333
+ mode?: string | undefined;
1334
+ } | undefined;
1335
+ pr?: {
1336
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1337
+ requires?: {
1338
+ ledger_tag: string;
1339
+ within?: string | undefined;
1340
+ count?: {
1341
+ exact?: number | undefined;
1342
+ min?: number | undefined;
1343
+ max?: number | undefined;
1344
+ } | undefined;
1345
+ } | undefined;
1346
+ mode?: string | undefined;
1347
+ } | undefined;
1348
+ deploy?: {
1349
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1350
+ requires?: {
1351
+ ledger_tag: string;
1352
+ within?: string | undefined;
1353
+ count?: {
1354
+ exact?: number | undefined;
1355
+ min?: number | undefined;
1356
+ max?: number | undefined;
1357
+ } | undefined;
1358
+ } | undefined;
1359
+ mode?: string | undefined;
1360
+ } | undefined;
1361
+ }, {
1362
+ push?: {
1363
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1364
+ requires?: {
1365
+ ledger_tag: string;
1366
+ within?: string | undefined;
1367
+ count?: {
1368
+ exact?: number | undefined;
1369
+ min?: number | undefined;
1370
+ max?: number | undefined;
1371
+ } | undefined;
1372
+ } | undefined;
1373
+ mode?: string | undefined;
1374
+ } | undefined;
1375
+ read?: {
1376
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1377
+ requires?: {
1378
+ ledger_tag: string;
1379
+ within?: string | undefined;
1380
+ count?: {
1381
+ exact?: number | undefined;
1382
+ min?: number | undefined;
1383
+ max?: number | undefined;
1384
+ } | undefined;
1385
+ } | undefined;
1386
+ mode?: string | undefined;
1387
+ } | undefined;
1388
+ edit?: {
1389
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1390
+ requires?: {
1391
+ ledger_tag: string;
1392
+ within?: string | undefined;
1393
+ count?: {
1394
+ exact?: number | undefined;
1395
+ min?: number | undefined;
1396
+ max?: number | undefined;
1397
+ } | undefined;
1398
+ } | undefined;
1399
+ mode?: string | undefined;
1400
+ } | undefined;
1401
+ bash?: {
1402
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1403
+ requires?: {
1404
+ ledger_tag: string;
1405
+ within?: string | undefined;
1406
+ count?: {
1407
+ exact?: number | undefined;
1408
+ min?: number | undefined;
1409
+ max?: number | undefined;
1410
+ } | undefined;
1411
+ } | undefined;
1412
+ mode?: string | undefined;
1413
+ } | undefined;
1414
+ commit?: {
1415
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1416
+ requires?: {
1417
+ ledger_tag: string;
1418
+ within?: string | undefined;
1419
+ count?: {
1420
+ exact?: number | undefined;
1421
+ min?: number | undefined;
1422
+ max?: number | undefined;
1423
+ } | undefined;
1424
+ } | undefined;
1425
+ mode?: string | undefined;
1426
+ } | undefined;
1427
+ pr?: {
1428
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1429
+ requires?: {
1430
+ ledger_tag: string;
1431
+ within?: string | undefined;
1432
+ count?: {
1433
+ exact?: number | undefined;
1434
+ min?: number | undefined;
1435
+ max?: number | undefined;
1436
+ } | undefined;
1437
+ } | undefined;
1438
+ mode?: string | undefined;
1439
+ } | undefined;
1440
+ deploy?: {
1441
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1442
+ requires?: {
1443
+ ledger_tag: string;
1444
+ within?: string | undefined;
1445
+ count?: {
1446
+ exact?: number | undefined;
1447
+ min?: number | undefined;
1448
+ max?: number | undefined;
1449
+ } | undefined;
1450
+ } | undefined;
1451
+ mode?: string | undefined;
1452
+ } | undefined;
1453
+ }>>;
1454
+ }, "strict", z.ZodTypeAny, {
1455
+ actions: {
1456
+ push?: {
1457
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1458
+ requires?: {
1459
+ ledger_tag: string;
1460
+ within?: string | undefined;
1461
+ count?: {
1462
+ exact?: number | undefined;
1463
+ min?: number | undefined;
1464
+ max?: number | undefined;
1465
+ } | undefined;
1466
+ } | undefined;
1467
+ mode?: string | undefined;
1468
+ } | undefined;
1469
+ read?: {
1470
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1471
+ requires?: {
1472
+ ledger_tag: string;
1473
+ within?: string | undefined;
1474
+ count?: {
1475
+ exact?: number | undefined;
1476
+ min?: number | undefined;
1477
+ max?: number | undefined;
1478
+ } | undefined;
1479
+ } | undefined;
1480
+ mode?: string | undefined;
1481
+ } | undefined;
1482
+ edit?: {
1483
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1484
+ requires?: {
1485
+ ledger_tag: string;
1486
+ within?: string | undefined;
1487
+ count?: {
1488
+ exact?: number | undefined;
1489
+ min?: number | undefined;
1490
+ max?: number | undefined;
1491
+ } | undefined;
1492
+ } | undefined;
1493
+ mode?: string | undefined;
1494
+ } | undefined;
1495
+ bash?: {
1496
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1497
+ requires?: {
1498
+ ledger_tag: string;
1499
+ within?: string | undefined;
1500
+ count?: {
1501
+ exact?: number | undefined;
1502
+ min?: number | undefined;
1503
+ max?: number | undefined;
1504
+ } | undefined;
1505
+ } | undefined;
1506
+ mode?: string | undefined;
1507
+ } | undefined;
1508
+ commit?: {
1509
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1510
+ requires?: {
1511
+ ledger_tag: string;
1512
+ within?: string | undefined;
1513
+ count?: {
1514
+ exact?: number | undefined;
1515
+ min?: number | undefined;
1516
+ max?: number | undefined;
1517
+ } | undefined;
1518
+ } | undefined;
1519
+ mode?: string | undefined;
1520
+ } | undefined;
1521
+ pr?: {
1522
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1523
+ requires?: {
1524
+ ledger_tag: string;
1525
+ within?: string | undefined;
1526
+ count?: {
1527
+ exact?: number | undefined;
1528
+ min?: number | undefined;
1529
+ max?: number | undefined;
1530
+ } | undefined;
1531
+ } | undefined;
1532
+ mode?: string | undefined;
1533
+ } | undefined;
1534
+ deploy?: {
1535
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
1536
+ requires?: {
1537
+ ledger_tag: string;
1538
+ within?: string | undefined;
1539
+ count?: {
1540
+ exact?: number | undefined;
1541
+ min?: number | undefined;
1542
+ max?: number | undefined;
1543
+ } | undefined;
1544
+ } | undefined;
1545
+ mode?: string | undefined;
1546
+ } | undefined;
1547
+ };
1548
+ description?: string | undefined;
1549
+ }, {
1550
+ description?: string | undefined;
1551
+ actions?: {
1552
+ push?: {
1553
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1554
+ requires?: {
1555
+ ledger_tag: string;
1556
+ within?: string | undefined;
1557
+ count?: {
1558
+ exact?: number | undefined;
1559
+ min?: number | undefined;
1560
+ max?: number | undefined;
1561
+ } | undefined;
1562
+ } | undefined;
1563
+ mode?: string | undefined;
1564
+ } | undefined;
1565
+ read?: {
1566
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1567
+ requires?: {
1568
+ ledger_tag: string;
1569
+ within?: string | undefined;
1570
+ count?: {
1571
+ exact?: number | undefined;
1572
+ min?: number | undefined;
1573
+ max?: number | undefined;
1574
+ } | undefined;
1575
+ } | undefined;
1576
+ mode?: string | undefined;
1577
+ } | undefined;
1578
+ edit?: {
1579
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1580
+ requires?: {
1581
+ ledger_tag: string;
1582
+ within?: string | undefined;
1583
+ count?: {
1584
+ exact?: number | undefined;
1585
+ min?: number | undefined;
1586
+ max?: number | undefined;
1587
+ } | undefined;
1588
+ } | undefined;
1589
+ mode?: string | undefined;
1590
+ } | undefined;
1591
+ bash?: {
1592
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1593
+ requires?: {
1594
+ ledger_tag: string;
1595
+ within?: string | undefined;
1596
+ count?: {
1597
+ exact?: number | undefined;
1598
+ min?: number | undefined;
1599
+ max?: number | undefined;
1600
+ } | undefined;
1601
+ } | undefined;
1602
+ mode?: string | undefined;
1603
+ } | undefined;
1604
+ commit?: {
1605
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1606
+ requires?: {
1607
+ ledger_tag: string;
1608
+ within?: string | undefined;
1609
+ count?: {
1610
+ exact?: number | undefined;
1611
+ min?: number | undefined;
1612
+ max?: number | undefined;
1613
+ } | undefined;
1614
+ } | undefined;
1615
+ mode?: string | undefined;
1616
+ } | undefined;
1617
+ pr?: {
1618
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1619
+ requires?: {
1620
+ ledger_tag: string;
1621
+ within?: string | undefined;
1622
+ count?: {
1623
+ exact?: number | undefined;
1624
+ min?: number | undefined;
1625
+ max?: number | undefined;
1626
+ } | undefined;
1627
+ } | undefined;
1628
+ mode?: string | undefined;
1629
+ } | undefined;
1630
+ deploy?: {
1631
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
1632
+ requires?: {
1633
+ ledger_tag: string;
1634
+ within?: string | undefined;
1635
+ count?: {
1636
+ exact?: number | undefined;
1637
+ min?: number | undefined;
1638
+ max?: number | undefined;
1639
+ } | undefined;
1640
+ } | undefined;
1641
+ mode?: string | undefined;
1642
+ } | undefined;
1643
+ } | undefined;
1644
+ }>>>;
1645
+ workflows: z.ZodDefault<z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodObject<{
1646
+ name: z.ZodString;
1647
+ when: z.ZodDefault<z.ZodObject<{
1648
+ task_label: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1649
+ project: z.ZodOptional<z.ZodString>;
1650
+ }, "strict", z.ZodTypeAny, {
1651
+ project?: string | undefined;
1652
+ task_label?: string[] | undefined;
1653
+ }, {
1654
+ project?: string | undefined;
1655
+ task_label?: string[] | undefined;
1656
+ }>>;
1657
+ steps: z.ZodArray<z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
1658
+ kind: z.ZodLiteral<"branch">;
1659
+ from: z.ZodDefault<z.ZodString>;
1660
+ per_task: z.ZodDefault<z.ZodBoolean>;
1661
+ }, "strict", z.ZodTypeAny, {
1662
+ kind: "branch";
1663
+ from: string;
1664
+ per_task: boolean;
1665
+ }, {
1666
+ kind: "branch";
1667
+ from?: string | undefined;
1668
+ per_task?: boolean | undefined;
1669
+ }>, z.ZodObject<{
1670
+ kind: z.ZodLiteral<"review_subagent">;
1671
+ spawn: z.ZodDefault<z.ZodEnum<["required", "optional", "skip"]>>;
1672
+ agent_type: z.ZodDefault<z.ZodString>;
1673
+ rigor: z.ZodDefault<z.ZodEnum<["rigorous", "quick", "docs-only"]>>;
1674
+ template: z.ZodOptional<z.ZodString>;
1675
+ on_findings: z.ZodDefault<z.ZodEnum<["fix_then_remerge", "comment_only"]>>;
1676
+ }, "strict", z.ZodTypeAny, {
1677
+ kind: "review_subagent";
1678
+ spawn: "required" | "optional" | "skip";
1679
+ agent_type: string;
1680
+ rigor: "rigorous" | "quick" | "docs-only";
1681
+ on_findings: "fix_then_remerge" | "comment_only";
1682
+ template?: string | undefined;
1683
+ }, {
1684
+ kind: "review_subagent";
1685
+ spawn?: "required" | "optional" | "skip" | undefined;
1686
+ agent_type?: string | undefined;
1687
+ rigor?: "rigorous" | "quick" | "docs-only" | undefined;
1688
+ template?: string | undefined;
1689
+ on_findings?: "fix_then_remerge" | "comment_only" | undefined;
1690
+ }>, z.ZodObject<{
1691
+ kind: z.ZodLiteral<"ci_gate">;
1692
+ wait_for: z.ZodDefault<z.ZodString>;
1693
+ }, "strict", z.ZodTypeAny, {
1694
+ kind: "ci_gate";
1695
+ wait_for: string;
1696
+ }, {
1697
+ kind: "ci_gate";
1698
+ wait_for?: string | undefined;
1699
+ }>, z.ZodObject<{
1700
+ kind: z.ZodLiteral<"merge">;
1701
+ method: z.ZodDefault<z.ZodEnum<["merge", "squash", "rebase"]>>;
1702
+ gate: z.ZodDefault<z.ZodEnum<["solo", "agent_tasks_label", "none"]>>;
1703
+ }, "strict", z.ZodTypeAny, {
1704
+ kind: "merge";
1705
+ method: "merge" | "squash" | "rebase";
1706
+ gate: "solo" | "agent_tasks_label" | "none";
1707
+ }, {
1708
+ kind: "merge";
1709
+ method?: "merge" | "squash" | "rebase" | undefined;
1710
+ gate?: "solo" | "agent_tasks_label" | "none" | undefined;
1711
+ }>]>, "many">;
1712
+ }, "strict", z.ZodTypeAny, {
1713
+ name: string;
1714
+ when: {
1715
+ project?: string | undefined;
1716
+ task_label?: string[] | undefined;
1717
+ };
1718
+ steps: ({
1719
+ kind: "branch";
1720
+ from: string;
1721
+ per_task: boolean;
1722
+ } | {
1723
+ kind: "review_subagent";
1724
+ spawn: "required" | "optional" | "skip";
1725
+ agent_type: string;
1726
+ rigor: "rigorous" | "quick" | "docs-only";
1727
+ on_findings: "fix_then_remerge" | "comment_only";
1728
+ template?: string | undefined;
1729
+ } | {
1730
+ kind: "ci_gate";
1731
+ wait_for: string;
1732
+ } | {
1733
+ kind: "merge";
1734
+ method: "merge" | "squash" | "rebase";
1735
+ gate: "solo" | "agent_tasks_label" | "none";
1736
+ })[];
1737
+ }, {
1738
+ name: string;
1739
+ steps: ({
1740
+ kind: "branch";
1741
+ from?: string | undefined;
1742
+ per_task?: boolean | undefined;
1743
+ } | {
1744
+ kind: "review_subagent";
1745
+ spawn?: "required" | "optional" | "skip" | undefined;
1746
+ agent_type?: string | undefined;
1747
+ rigor?: "rigorous" | "quick" | "docs-only" | undefined;
1748
+ template?: string | undefined;
1749
+ on_findings?: "fix_then_remerge" | "comment_only" | undefined;
1750
+ } | {
1751
+ kind: "ci_gate";
1752
+ wait_for?: string | undefined;
1753
+ } | {
1754
+ kind: "merge";
1755
+ method?: "merge" | "squash" | "rebase" | undefined;
1756
+ gate?: "solo" | "agent_tasks_label" | "none" | undefined;
1757
+ })[];
1758
+ when?: {
1759
+ project?: string | undefined;
1760
+ task_label?: string[] | undefined;
1761
+ } | undefined;
1762
+ }>, {
1763
+ name: string;
1764
+ when: {
1765
+ project?: string | undefined;
1766
+ task_label?: string[] | undefined;
1767
+ };
1768
+ steps: ({
1769
+ kind: "branch";
1770
+ from: string;
1771
+ per_task: boolean;
1772
+ } | {
1773
+ kind: "review_subagent";
1774
+ spawn: "required" | "optional" | "skip";
1775
+ agent_type: string;
1776
+ rigor: "rigorous" | "quick" | "docs-only";
1777
+ on_findings: "fix_then_remerge" | "comment_only";
1778
+ template?: string | undefined;
1779
+ } | {
1780
+ kind: "ci_gate";
1781
+ wait_for: string;
1782
+ } | {
1783
+ kind: "merge";
1784
+ method: "merge" | "squash" | "rebase";
1785
+ gate: "solo" | "agent_tasks_label" | "none";
1786
+ })[];
1787
+ }, {
1788
+ name: string;
1789
+ steps: ({
1790
+ kind: "branch";
1791
+ from?: string | undefined;
1792
+ per_task?: boolean | undefined;
1793
+ } | {
1794
+ kind: "review_subagent";
1795
+ spawn?: "required" | "optional" | "skip" | undefined;
1796
+ agent_type?: string | undefined;
1797
+ rigor?: "rigorous" | "quick" | "docs-only" | undefined;
1798
+ template?: string | undefined;
1799
+ on_findings?: "fix_then_remerge" | "comment_only" | undefined;
1800
+ } | {
1801
+ kind: "ci_gate";
1802
+ wait_for?: string | undefined;
1803
+ } | {
1804
+ kind: "merge";
1805
+ method?: "merge" | "squash" | "rebase" | undefined;
1806
+ gate?: "solo" | "agent_tasks_label" | "none" | undefined;
1807
+ })[];
1808
+ when?: {
1809
+ project?: string | undefined;
1810
+ task_label?: string[] | undefined;
1811
+ } | undefined;
1812
+ }>, "many">, {
1813
+ name: string;
1814
+ when: {
1815
+ project?: string | undefined;
1816
+ task_label?: string[] | undefined;
1817
+ };
1818
+ steps: ({
1819
+ kind: "branch";
1820
+ from: string;
1821
+ per_task: boolean;
1822
+ } | {
1823
+ kind: "review_subagent";
1824
+ spawn: "required" | "optional" | "skip";
1825
+ agent_type: string;
1826
+ rigor: "rigorous" | "quick" | "docs-only";
1827
+ on_findings: "fix_then_remerge" | "comment_only";
1828
+ template?: string | undefined;
1829
+ } | {
1830
+ kind: "ci_gate";
1831
+ wait_for: string;
1832
+ } | {
1833
+ kind: "merge";
1834
+ method: "merge" | "squash" | "rebase";
1835
+ gate: "solo" | "agent_tasks_label" | "none";
1836
+ })[];
1837
+ }[], {
1838
+ name: string;
1839
+ steps: ({
1840
+ kind: "branch";
1841
+ from?: string | undefined;
1842
+ per_task?: boolean | undefined;
1843
+ } | {
1844
+ kind: "review_subagent";
1845
+ spawn?: "required" | "optional" | "skip" | undefined;
1846
+ agent_type?: string | undefined;
1847
+ rigor?: "rigorous" | "quick" | "docs-only" | undefined;
1848
+ template?: string | undefined;
1849
+ on_findings?: "fix_then_remerge" | "comment_only" | undefined;
1850
+ } | {
1851
+ kind: "ci_gate";
1852
+ wait_for?: string | undefined;
1853
+ } | {
1854
+ kind: "merge";
1855
+ method?: "merge" | "squash" | "rebase" | undefined;
1856
+ gate?: "solo" | "agent_tasks_label" | "none" | undefined;
1857
+ })[];
1858
+ when?: {
1859
+ project?: string | undefined;
1860
+ task_label?: string[] | undefined;
1861
+ } | undefined;
1862
+ }[]>>;
1863
+ review_templates: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
1864
+ audit: z.ZodDefault<z.ZodObject<{
1865
+ redact: z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodEffects<z.ZodObject<{
1866
+ regex: z.ZodString;
1867
+ replacement: z.ZodDefault<z.ZodString>;
1868
+ }, "strict", z.ZodTypeAny, {
1869
+ regex: string;
1870
+ replacement: string;
1871
+ }, {
1872
+ regex: string;
1873
+ replacement?: string | undefined;
1874
+ }>, {
1875
+ regex: string;
1876
+ replacement: string;
1877
+ }, {
1878
+ regex: string;
1879
+ replacement?: string | undefined;
1880
+ }>, z.ZodObject<{
1881
+ env_var: z.ZodString;
1882
+ replacement: z.ZodDefault<z.ZodString>;
1883
+ }, "strict", z.ZodTypeAny, {
1884
+ replacement: string;
1885
+ env_var: string;
1886
+ }, {
1887
+ env_var: string;
1888
+ replacement?: string | undefined;
1889
+ }>]>, "many">>;
1890
+ }, "strict", z.ZodTypeAny, {
1891
+ redact: ({
1892
+ regex: string;
1893
+ replacement: string;
1894
+ } | {
1895
+ replacement: string;
1896
+ env_var: string;
1897
+ })[];
1898
+ }, {
1899
+ redact?: ({
1900
+ regex: string;
1901
+ replacement?: string | undefined;
1902
+ } | {
1903
+ env_var: string;
1904
+ replacement?: string | undefined;
1905
+ })[] | undefined;
1906
+ }>>;
584
1907
  }, "strict", z.ZodTypeAny, {
585
1908
  version: 1;
586
1909
  grounding: {
@@ -610,8 +1933,8 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
610
1933
  }[];
611
1934
  cli: {
612
1935
  name: string;
613
- binary: string;
614
1936
  required: boolean;
1937
+ binary: string;
615
1938
  min_version?: string | undefined;
616
1939
  version_command?: string[] | undefined;
617
1940
  }[];
@@ -672,6 +1995,145 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
672
1995
  hook: string;
673
1996
  enforcement: "warn" | "block";
674
1997
  }[];
1998
+ policy_packs: {
1999
+ name: string;
2000
+ enabled: boolean;
2001
+ source: string;
2002
+ config: Record<string, unknown>;
2003
+ description?: string | undefined;
2004
+ }[];
2005
+ permission_profiles: Record<string, {
2006
+ actions: {
2007
+ push?: {
2008
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
2009
+ requires?: {
2010
+ ledger_tag: string;
2011
+ within?: string | undefined;
2012
+ count?: {
2013
+ exact?: number | undefined;
2014
+ min?: number | undefined;
2015
+ max?: number | undefined;
2016
+ } | undefined;
2017
+ } | undefined;
2018
+ mode?: string | undefined;
2019
+ } | undefined;
2020
+ read?: {
2021
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
2022
+ requires?: {
2023
+ ledger_tag: string;
2024
+ within?: string | undefined;
2025
+ count?: {
2026
+ exact?: number | undefined;
2027
+ min?: number | undefined;
2028
+ max?: number | undefined;
2029
+ } | undefined;
2030
+ } | undefined;
2031
+ mode?: string | undefined;
2032
+ } | undefined;
2033
+ edit?: {
2034
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
2035
+ requires?: {
2036
+ ledger_tag: string;
2037
+ within?: string | undefined;
2038
+ count?: {
2039
+ exact?: number | undefined;
2040
+ min?: number | undefined;
2041
+ max?: number | undefined;
2042
+ } | undefined;
2043
+ } | undefined;
2044
+ mode?: string | undefined;
2045
+ } | undefined;
2046
+ bash?: {
2047
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
2048
+ requires?: {
2049
+ ledger_tag: string;
2050
+ within?: string | undefined;
2051
+ count?: {
2052
+ exact?: number | undefined;
2053
+ min?: number | undefined;
2054
+ max?: number | undefined;
2055
+ } | undefined;
2056
+ } | undefined;
2057
+ mode?: string | undefined;
2058
+ } | undefined;
2059
+ commit?: {
2060
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
2061
+ requires?: {
2062
+ ledger_tag: string;
2063
+ within?: string | undefined;
2064
+ count?: {
2065
+ exact?: number | undefined;
2066
+ min?: number | undefined;
2067
+ max?: number | undefined;
2068
+ } | undefined;
2069
+ } | undefined;
2070
+ mode?: string | undefined;
2071
+ } | undefined;
2072
+ pr?: {
2073
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
2074
+ requires?: {
2075
+ ledger_tag: string;
2076
+ within?: string | undefined;
2077
+ count?: {
2078
+ exact?: number | undefined;
2079
+ min?: number | undefined;
2080
+ max?: number | undefined;
2081
+ } | undefined;
2082
+ } | undefined;
2083
+ mode?: string | undefined;
2084
+ } | undefined;
2085
+ deploy?: {
2086
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
2087
+ requires?: {
2088
+ ledger_tag: string;
2089
+ within?: string | undefined;
2090
+ count?: {
2091
+ exact?: number | undefined;
2092
+ min?: number | undefined;
2093
+ max?: number | undefined;
2094
+ } | undefined;
2095
+ } | undefined;
2096
+ mode?: string | undefined;
2097
+ } | undefined;
2098
+ };
2099
+ description?: string | undefined;
2100
+ }>;
2101
+ workflows: {
2102
+ name: string;
2103
+ when: {
2104
+ project?: string | undefined;
2105
+ task_label?: string[] | undefined;
2106
+ };
2107
+ steps: ({
2108
+ kind: "branch";
2109
+ from: string;
2110
+ per_task: boolean;
2111
+ } | {
2112
+ kind: "review_subagent";
2113
+ spawn: "required" | "optional" | "skip";
2114
+ agent_type: string;
2115
+ rigor: "rigorous" | "quick" | "docs-only";
2116
+ on_findings: "fix_then_remerge" | "comment_only";
2117
+ template?: string | undefined;
2118
+ } | {
2119
+ kind: "ci_gate";
2120
+ wait_for: string;
2121
+ } | {
2122
+ kind: "merge";
2123
+ method: "merge" | "squash" | "rebase";
2124
+ gate: "solo" | "agent_tasks_label" | "none";
2125
+ })[];
2126
+ }[];
2127
+ review_templates: Record<string, string>;
2128
+ audit: {
2129
+ redact: ({
2130
+ regex: string;
2131
+ replacement: string;
2132
+ } | {
2133
+ replacement: string;
2134
+ env_var: string;
2135
+ })[];
2136
+ };
675
2137
  }, {
676
2138
  version: 1;
677
2139
  grounding?: {
@@ -702,9 +2164,9 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
702
2164
  cli?: {
703
2165
  name: string;
704
2166
  binary: string;
2167
+ required?: boolean | undefined;
705
2168
  min_version?: string | undefined;
706
2169
  version_command?: string[] | undefined;
707
- required?: boolean | undefined;
708
2170
  }[] | undefined;
709
2171
  skills?: {
710
2172
  enabled?: string[] | undefined;
@@ -763,6 +2225,145 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
763
2225
  hook: string;
764
2226
  enforcement: "warn" | "block";
765
2227
  }[] | undefined;
2228
+ policy_packs?: {
2229
+ name: string;
2230
+ description?: string | undefined;
2231
+ enabled?: boolean | undefined;
2232
+ source?: string | undefined;
2233
+ config?: Record<string, unknown> | undefined;
2234
+ }[] | undefined;
2235
+ permission_profiles?: Record<string, {
2236
+ description?: string | undefined;
2237
+ actions?: {
2238
+ push?: {
2239
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
2240
+ requires?: {
2241
+ ledger_tag: string;
2242
+ within?: string | undefined;
2243
+ count?: {
2244
+ exact?: number | undefined;
2245
+ min?: number | undefined;
2246
+ max?: number | undefined;
2247
+ } | undefined;
2248
+ } | undefined;
2249
+ mode?: string | undefined;
2250
+ } | undefined;
2251
+ read?: {
2252
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
2253
+ requires?: {
2254
+ ledger_tag: string;
2255
+ within?: string | undefined;
2256
+ count?: {
2257
+ exact?: number | undefined;
2258
+ min?: number | undefined;
2259
+ max?: number | undefined;
2260
+ } | undefined;
2261
+ } | undefined;
2262
+ mode?: string | undefined;
2263
+ } | undefined;
2264
+ edit?: {
2265
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
2266
+ requires?: {
2267
+ ledger_tag: string;
2268
+ within?: string | undefined;
2269
+ count?: {
2270
+ exact?: number | undefined;
2271
+ min?: number | undefined;
2272
+ max?: number | undefined;
2273
+ } | undefined;
2274
+ } | undefined;
2275
+ mode?: string | undefined;
2276
+ } | undefined;
2277
+ bash?: {
2278
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
2279
+ requires?: {
2280
+ ledger_tag: string;
2281
+ within?: string | undefined;
2282
+ count?: {
2283
+ exact?: number | undefined;
2284
+ min?: number | undefined;
2285
+ max?: number | undefined;
2286
+ } | undefined;
2287
+ } | undefined;
2288
+ mode?: string | undefined;
2289
+ } | undefined;
2290
+ commit?: {
2291
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
2292
+ requires?: {
2293
+ ledger_tag: string;
2294
+ within?: string | undefined;
2295
+ count?: {
2296
+ exact?: number | undefined;
2297
+ min?: number | undefined;
2298
+ max?: number | undefined;
2299
+ } | undefined;
2300
+ } | undefined;
2301
+ mode?: string | undefined;
2302
+ } | undefined;
2303
+ pr?: {
2304
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
2305
+ requires?: {
2306
+ ledger_tag: string;
2307
+ within?: string | undefined;
2308
+ count?: {
2309
+ exact?: number | undefined;
2310
+ min?: number | undefined;
2311
+ max?: number | undefined;
2312
+ } | undefined;
2313
+ } | undefined;
2314
+ mode?: string | undefined;
2315
+ } | undefined;
2316
+ deploy?: {
2317
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
2318
+ requires?: {
2319
+ ledger_tag: string;
2320
+ within?: string | undefined;
2321
+ count?: {
2322
+ exact?: number | undefined;
2323
+ min?: number | undefined;
2324
+ max?: number | undefined;
2325
+ } | undefined;
2326
+ } | undefined;
2327
+ mode?: string | undefined;
2328
+ } | undefined;
2329
+ } | undefined;
2330
+ }> | undefined;
2331
+ workflows?: {
2332
+ name: string;
2333
+ steps: ({
2334
+ kind: "branch";
2335
+ from?: string | undefined;
2336
+ per_task?: boolean | undefined;
2337
+ } | {
2338
+ kind: "review_subagent";
2339
+ spawn?: "required" | "optional" | "skip" | undefined;
2340
+ agent_type?: string | undefined;
2341
+ rigor?: "rigorous" | "quick" | "docs-only" | undefined;
2342
+ template?: string | undefined;
2343
+ on_findings?: "fix_then_remerge" | "comment_only" | undefined;
2344
+ } | {
2345
+ kind: "ci_gate";
2346
+ wait_for?: string | undefined;
2347
+ } | {
2348
+ kind: "merge";
2349
+ method?: "merge" | "squash" | "rebase" | undefined;
2350
+ gate?: "solo" | "agent_tasks_label" | "none" | undefined;
2351
+ })[];
2352
+ when?: {
2353
+ project?: string | undefined;
2354
+ task_label?: string[] | undefined;
2355
+ } | undefined;
2356
+ }[] | undefined;
2357
+ review_templates?: Record<string, string> | undefined;
2358
+ audit?: {
2359
+ redact?: ({
2360
+ regex: string;
2361
+ replacement?: string | undefined;
2362
+ } | {
2363
+ env_var: string;
2364
+ replacement?: string | undefined;
2365
+ })[] | undefined;
2366
+ } | undefined;
766
2367
  }>, {
767
2368
  version: 1;
768
2369
  grounding: {
@@ -792,8 +2393,8 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
792
2393
  }[];
793
2394
  cli: {
794
2395
  name: string;
795
- binary: string;
796
2396
  required: boolean;
2397
+ binary: string;
797
2398
  min_version?: string | undefined;
798
2399
  version_command?: string[] | undefined;
799
2400
  }[];
@@ -854,6 +2455,145 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
854
2455
  hook: string;
855
2456
  enforcement: "warn" | "block";
856
2457
  }[];
2458
+ policy_packs: {
2459
+ name: string;
2460
+ enabled: boolean;
2461
+ source: string;
2462
+ config: Record<string, unknown>;
2463
+ description?: string | undefined;
2464
+ }[];
2465
+ permission_profiles: Record<string, {
2466
+ actions: {
2467
+ push?: {
2468
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
2469
+ requires?: {
2470
+ ledger_tag: string;
2471
+ within?: string | undefined;
2472
+ count?: {
2473
+ exact?: number | undefined;
2474
+ min?: number | undefined;
2475
+ max?: number | undefined;
2476
+ } | undefined;
2477
+ } | undefined;
2478
+ mode?: string | undefined;
2479
+ } | undefined;
2480
+ read?: {
2481
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
2482
+ requires?: {
2483
+ ledger_tag: string;
2484
+ within?: string | undefined;
2485
+ count?: {
2486
+ exact?: number | undefined;
2487
+ min?: number | undefined;
2488
+ max?: number | undefined;
2489
+ } | undefined;
2490
+ } | undefined;
2491
+ mode?: string | undefined;
2492
+ } | undefined;
2493
+ edit?: {
2494
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
2495
+ requires?: {
2496
+ ledger_tag: string;
2497
+ within?: string | undefined;
2498
+ count?: {
2499
+ exact?: number | undefined;
2500
+ min?: number | undefined;
2501
+ max?: number | undefined;
2502
+ } | undefined;
2503
+ } | undefined;
2504
+ mode?: string | undefined;
2505
+ } | undefined;
2506
+ bash?: {
2507
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
2508
+ requires?: {
2509
+ ledger_tag: string;
2510
+ within?: string | undefined;
2511
+ count?: {
2512
+ exact?: number | undefined;
2513
+ min?: number | undefined;
2514
+ max?: number | undefined;
2515
+ } | undefined;
2516
+ } | undefined;
2517
+ mode?: string | undefined;
2518
+ } | undefined;
2519
+ commit?: {
2520
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
2521
+ requires?: {
2522
+ ledger_tag: string;
2523
+ within?: string | undefined;
2524
+ count?: {
2525
+ exact?: number | undefined;
2526
+ min?: number | undefined;
2527
+ max?: number | undefined;
2528
+ } | undefined;
2529
+ } | undefined;
2530
+ mode?: string | undefined;
2531
+ } | undefined;
2532
+ pr?: {
2533
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
2534
+ requires?: {
2535
+ ledger_tag: string;
2536
+ within?: string | undefined;
2537
+ count?: {
2538
+ exact?: number | undefined;
2539
+ min?: number | undefined;
2540
+ max?: number | undefined;
2541
+ } | undefined;
2542
+ } | undefined;
2543
+ mode?: string | undefined;
2544
+ } | undefined;
2545
+ deploy?: {
2546
+ allow: "true" | "false" | "ask" | "limited" | "ask_or_deny";
2547
+ requires?: {
2548
+ ledger_tag: string;
2549
+ within?: string | undefined;
2550
+ count?: {
2551
+ exact?: number | undefined;
2552
+ min?: number | undefined;
2553
+ max?: number | undefined;
2554
+ } | undefined;
2555
+ } | undefined;
2556
+ mode?: string | undefined;
2557
+ } | undefined;
2558
+ };
2559
+ description?: string | undefined;
2560
+ }>;
2561
+ workflows: {
2562
+ name: string;
2563
+ when: {
2564
+ project?: string | undefined;
2565
+ task_label?: string[] | undefined;
2566
+ };
2567
+ steps: ({
2568
+ kind: "branch";
2569
+ from: string;
2570
+ per_task: boolean;
2571
+ } | {
2572
+ kind: "review_subagent";
2573
+ spawn: "required" | "optional" | "skip";
2574
+ agent_type: string;
2575
+ rigor: "rigorous" | "quick" | "docs-only";
2576
+ on_findings: "fix_then_remerge" | "comment_only";
2577
+ template?: string | undefined;
2578
+ } | {
2579
+ kind: "ci_gate";
2580
+ wait_for: string;
2581
+ } | {
2582
+ kind: "merge";
2583
+ method: "merge" | "squash" | "rebase";
2584
+ gate: "solo" | "agent_tasks_label" | "none";
2585
+ })[];
2586
+ }[];
2587
+ review_templates: Record<string, string>;
2588
+ audit: {
2589
+ redact: ({
2590
+ regex: string;
2591
+ replacement: string;
2592
+ } | {
2593
+ replacement: string;
2594
+ env_var: string;
2595
+ })[];
2596
+ };
857
2597
  }, {
858
2598
  version: 1;
859
2599
  grounding?: {
@@ -884,9 +2624,9 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
884
2624
  cli?: {
885
2625
  name: string;
886
2626
  binary: string;
2627
+ required?: boolean | undefined;
887
2628
  min_version?: string | undefined;
888
2629
  version_command?: string[] | undefined;
889
- required?: boolean | undefined;
890
2630
  }[] | undefined;
891
2631
  skills?: {
892
2632
  enabled?: string[] | undefined;
@@ -945,6 +2685,145 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
945
2685
  hook: string;
946
2686
  enforcement: "warn" | "block";
947
2687
  }[] | undefined;
2688
+ policy_packs?: {
2689
+ name: string;
2690
+ description?: string | undefined;
2691
+ enabled?: boolean | undefined;
2692
+ source?: string | undefined;
2693
+ config?: Record<string, unknown> | undefined;
2694
+ }[] | undefined;
2695
+ permission_profiles?: Record<string, {
2696
+ description?: string | undefined;
2697
+ actions?: {
2698
+ push?: {
2699
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
2700
+ requires?: {
2701
+ ledger_tag: string;
2702
+ within?: string | undefined;
2703
+ count?: {
2704
+ exact?: number | undefined;
2705
+ min?: number | undefined;
2706
+ max?: number | undefined;
2707
+ } | undefined;
2708
+ } | undefined;
2709
+ mode?: string | undefined;
2710
+ } | undefined;
2711
+ read?: {
2712
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
2713
+ requires?: {
2714
+ ledger_tag: string;
2715
+ within?: string | undefined;
2716
+ count?: {
2717
+ exact?: number | undefined;
2718
+ min?: number | undefined;
2719
+ max?: number | undefined;
2720
+ } | undefined;
2721
+ } | undefined;
2722
+ mode?: string | undefined;
2723
+ } | undefined;
2724
+ edit?: {
2725
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
2726
+ requires?: {
2727
+ ledger_tag: string;
2728
+ within?: string | undefined;
2729
+ count?: {
2730
+ exact?: number | undefined;
2731
+ min?: number | undefined;
2732
+ max?: number | undefined;
2733
+ } | undefined;
2734
+ } | undefined;
2735
+ mode?: string | undefined;
2736
+ } | undefined;
2737
+ bash?: {
2738
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
2739
+ requires?: {
2740
+ ledger_tag: string;
2741
+ within?: string | undefined;
2742
+ count?: {
2743
+ exact?: number | undefined;
2744
+ min?: number | undefined;
2745
+ max?: number | undefined;
2746
+ } | undefined;
2747
+ } | undefined;
2748
+ mode?: string | undefined;
2749
+ } | undefined;
2750
+ commit?: {
2751
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
2752
+ requires?: {
2753
+ ledger_tag: string;
2754
+ within?: string | undefined;
2755
+ count?: {
2756
+ exact?: number | undefined;
2757
+ min?: number | undefined;
2758
+ max?: number | undefined;
2759
+ } | undefined;
2760
+ } | undefined;
2761
+ mode?: string | undefined;
2762
+ } | undefined;
2763
+ pr?: {
2764
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
2765
+ requires?: {
2766
+ ledger_tag: string;
2767
+ within?: string | undefined;
2768
+ count?: {
2769
+ exact?: number | undefined;
2770
+ min?: number | undefined;
2771
+ max?: number | undefined;
2772
+ } | undefined;
2773
+ } | undefined;
2774
+ mode?: string | undefined;
2775
+ } | undefined;
2776
+ deploy?: {
2777
+ allow: boolean | "true" | "false" | "ask" | "limited" | "ask_or_deny";
2778
+ requires?: {
2779
+ ledger_tag: string;
2780
+ within?: string | undefined;
2781
+ count?: {
2782
+ exact?: number | undefined;
2783
+ min?: number | undefined;
2784
+ max?: number | undefined;
2785
+ } | undefined;
2786
+ } | undefined;
2787
+ mode?: string | undefined;
2788
+ } | undefined;
2789
+ } | undefined;
2790
+ }> | undefined;
2791
+ workflows?: {
2792
+ name: string;
2793
+ steps: ({
2794
+ kind: "branch";
2795
+ from?: string | undefined;
2796
+ per_task?: boolean | undefined;
2797
+ } | {
2798
+ kind: "review_subagent";
2799
+ spawn?: "required" | "optional" | "skip" | undefined;
2800
+ agent_type?: string | undefined;
2801
+ rigor?: "rigorous" | "quick" | "docs-only" | undefined;
2802
+ template?: string | undefined;
2803
+ on_findings?: "fix_then_remerge" | "comment_only" | undefined;
2804
+ } | {
2805
+ kind: "ci_gate";
2806
+ wait_for?: string | undefined;
2807
+ } | {
2808
+ kind: "merge";
2809
+ method?: "merge" | "squash" | "rebase" | undefined;
2810
+ gate?: "solo" | "agent_tasks_label" | "none" | undefined;
2811
+ })[];
2812
+ when?: {
2813
+ project?: string | undefined;
2814
+ task_label?: string[] | undefined;
2815
+ } | undefined;
2816
+ }[] | undefined;
2817
+ review_templates?: Record<string, string> | undefined;
2818
+ audit?: {
2819
+ redact?: ({
2820
+ regex: string;
2821
+ replacement?: string | undefined;
2822
+ } | {
2823
+ env_var: string;
2824
+ replacement?: string | undefined;
2825
+ })[] | undefined;
2826
+ } | undefined;
948
2827
  }>;
949
2828
  export type Manifest = z.infer<typeof ManifestSchema>;
950
2829
  export declare class ManifestParseError extends Error {
@@ -956,6 +2835,10 @@ export * from "./grounding.js";
956
2835
  export * from "./tools.js";
957
2836
  export * from "./memory.js";
958
2837
  export * from "./hooks.js";
2838
+ export * from "./permission-profiles.js";
959
2839
  export * from "./policies.js";
2840
+ export * from "./policy-packs.js";
2841
+ export * from "./workflows.js";
2842
+ export * from "./audit.js";
960
2843
  export * from "./extract.js";
961
2844
  export * from "./requires.js";