@opsee/mcp-server 0.10.2 → 0.11.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 (53) hide show
  1. package/gen/api/v1/acceptance_criterion_pb.js +2 -1
  2. package/gen/api/v1/account_pb.d.ts +20 -0
  3. package/gen/api/v1/account_pb.js +1 -1
  4. package/gen/api/v1/activity_log_pb.js +2 -1
  5. package/gen/api/v1/ai_workflow_run_pb.js +2 -1
  6. package/gen/api/v1/ai_workflow_unit_pb.js +2 -1
  7. package/gen/api/v1/attachment_pb.js +2 -1
  8. package/gen/api/v1/board_column_pb.d.ts +75 -0
  9. package/gen/api/v1/board_column_pb.js +27 -5
  10. package/gen/api/v1/board_pb.js +2 -1
  11. package/gen/api/v1/comment_pb.d.ts +19 -0
  12. package/gen/api/v1/comment_pb.js +2 -1
  13. package/gen/api/v1/component_pb.js +2 -1
  14. package/gen/api/v1/cycle_pb.js +2 -1
  15. package/gen/api/v1/doc_page_pb.js +2 -1
  16. package/gen/api/v1/doc_space_pb.js +2 -1
  17. package/gen/api/v1/doc_template_pb.js +2 -1
  18. package/gen/api/v1/document_pb.js +2 -1
  19. package/gen/api/v1/initiative_pb.d.ts +181 -0
  20. package/gen/api/v1/initiative_pb.js +46 -17
  21. package/gen/api/v1/integration_pb.d.ts +559 -0
  22. package/gen/api/v1/integration_pb.js +123 -3
  23. package/gen/api/v1/label_pb.js +2 -1
  24. package/gen/api/v1/milestone_doc_page_pb.js +2 -1
  25. package/gen/api/v1/milestone_document_pb.js +2 -1
  26. package/gen/api/v1/milestone_pb.js +2 -1
  27. package/gen/api/v1/milestone_repository_pb.js +2 -1
  28. package/gen/api/v1/milestone_task_pb.js +2 -1
  29. package/gen/api/v1/models_pb.d.ts +55 -0
  30. package/gen/api/v1/models_pb.js +56 -49
  31. package/gen/api/v1/orchestrator_pb.d.ts +164 -1
  32. package/gen/api/v1/orchestrator_pb.js +81 -53
  33. package/gen/api/v1/project_membership_pb.d.ts +207 -1
  34. package/gen/api/v1/project_membership_pb.js +46 -2
  35. package/gen/api/v1/project_pb.d.ts +47 -3
  36. package/gen/api/v1/project_pb.js +29 -15
  37. package/gen/api/v1/readiness_pb.d.ts +229 -10
  38. package/gen/api/v1/readiness_pb.js +50 -7
  39. package/gen/api/v1/reporting_pb.js +2 -1
  40. package/gen/api/v1/subscription_pb.js +1 -1
  41. package/gen/api/v1/task_component_pb.js +2 -1
  42. package/gen/api/v1/task_contributor_pb.js +2 -1
  43. package/gen/api/v1/task_doc_page_pb.js +2 -1
  44. package/gen/api/v1/task_document_pb.js +2 -1
  45. package/gen/api/v1/task_label_pb.js +2 -1
  46. package/gen/api/v1/task_pb.d.ts +281 -1
  47. package/gen/api/v1/task_pb.js +73 -23
  48. package/gen/api/v1/task_priority_pb.js +2 -1
  49. package/gen/api/v1/task_repository_pb.js +2 -1
  50. package/gen/api/v1/task_template_pb.js +2 -1
  51. package/gen/api/v1/task_type_pb.js +2 -1
  52. package/gen/api/v1/view_pb.js +2 -1
  53. package/package.json +1 -1
@@ -79,6 +79,17 @@ export declare type Integration = Message<"api.v1.Integration"> & {
79
79
  * @generated from field: bool dm_opt_in = 10;
80
80
  */
81
81
  dmOptIn: boolean;
82
+
83
+ /**
84
+ * needs_reconnect is true when the token was issued with fewer scopes than the
85
+ * provider now requires. Slack fixes scopes at issue time, so a workspace
86
+ * connected before a scope was added keeps the old grant and the dependent
87
+ * feature answers missing_scope until someone re-runs OAuth. Computed server
88
+ * side so the required-scope list stays in one place.
89
+ *
90
+ * @generated from field: bool needs_reconnect = 11;
91
+ */
92
+ needsReconnect: boolean;
82
93
  };
83
94
 
84
95
  /**
@@ -482,6 +493,15 @@ export declare type ListRoutesRequest = Message<"api.v1.ListRoutesRequest"> & {
482
493
  * @generated from field: uint32 integration_id = 1;
483
494
  */
484
495
  integrationId: number;
496
+
497
+ /**
498
+ * Scope results to one project's routes plus the company-wide defaults. Unset
499
+ * returns every route on the integration, which is only useful for admin views:
500
+ * a project-scoped config UI must set this or it will edit other projects' rows.
501
+ *
502
+ * @generated from field: optional uint32 project_id = 2;
503
+ */
504
+ projectId?: number;
485
505
  };
486
506
 
487
507
  /**
@@ -591,6 +611,150 @@ export declare type DeleteRouteRequest = Message<"api.v1.DeleteRouteRequest"> &
591
611
  */
592
612
  export declare const DeleteRouteRequestSchema: GenMessage<DeleteRouteRequest>;
593
613
 
614
+ /**
615
+ * A channel -> project mapping: tasks filed from this channel land in this
616
+ * project. Distinct from IntegrationRoute, which only says where notifications
617
+ * are delivered.
618
+ *
619
+ * @generated from message api.v1.IntegrationChannelProject
620
+ */
621
+ export declare type IntegrationChannelProject = Message<"api.v1.IntegrationChannelProject"> & {
622
+ /**
623
+ * @generated from field: uint32 id = 1;
624
+ */
625
+ id: number;
626
+
627
+ /**
628
+ * @generated from field: uint32 integration_id = 2;
629
+ */
630
+ integrationId: number;
631
+
632
+ /**
633
+ * @generated from field: string channel_id = 3;
634
+ */
635
+ channelId: string;
636
+
637
+ /**
638
+ * resolved for display; empty when the bot cannot see it
639
+ *
640
+ * @generated from field: string channel_name = 4;
641
+ */
642
+ channelName: string;
643
+
644
+ /**
645
+ * @generated from field: uint32 project_id = 5;
646
+ */
647
+ projectId: number;
648
+
649
+ /**
650
+ * @generated from field: string project_name = 6;
651
+ */
652
+ projectName: string;
653
+ };
654
+
655
+ /**
656
+ * Describes the message api.v1.IntegrationChannelProject.
657
+ * Use `create(IntegrationChannelProjectSchema)` to create a new message.
658
+ */
659
+ export declare const IntegrationChannelProjectSchema: GenMessage<IntegrationChannelProject>;
660
+
661
+ /**
662
+ * @generated from message api.v1.ListChannelProjectsRequest
663
+ */
664
+ export declare type ListChannelProjectsRequest = Message<"api.v1.ListChannelProjectsRequest"> & {
665
+ /**
666
+ * @generated from field: uint32 integration_id = 1;
667
+ */
668
+ integrationId: number;
669
+ };
670
+
671
+ /**
672
+ * Describes the message api.v1.ListChannelProjectsRequest.
673
+ * Use `create(ListChannelProjectsRequestSchema)` to create a new message.
674
+ */
675
+ export declare const ListChannelProjectsRequestSchema: GenMessage<ListChannelProjectsRequest>;
676
+
677
+ /**
678
+ * @generated from message api.v1.ListChannelProjectsResponse
679
+ */
680
+ export declare type ListChannelProjectsResponse = Message<"api.v1.ListChannelProjectsResponse"> & {
681
+ /**
682
+ * @generated from field: repeated api.v1.IntegrationChannelProject mappings = 1;
683
+ */
684
+ mappings: IntegrationChannelProject[];
685
+ };
686
+
687
+ /**
688
+ * Describes the message api.v1.ListChannelProjectsResponse.
689
+ * Use `create(ListChannelProjectsResponseSchema)` to create a new message.
690
+ */
691
+ export declare const ListChannelProjectsResponseSchema: GenMessage<ListChannelProjectsResponse>;
692
+
693
+ /**
694
+ * @generated from message api.v1.SetChannelProjectRequest
695
+ */
696
+ export declare type SetChannelProjectRequest = Message<"api.v1.SetChannelProjectRequest"> & {
697
+ /**
698
+ * @generated from field: uint32 integration_id = 1;
699
+ */
700
+ integrationId: number;
701
+
702
+ /**
703
+ * set to repoint an existing mapping
704
+ *
705
+ * @generated from field: optional uint32 mapping_id = 2;
706
+ */
707
+ mappingId?: number;
708
+
709
+ /**
710
+ * @generated from field: string channel_id = 3;
711
+ */
712
+ channelId: string;
713
+
714
+ /**
715
+ * @generated from field: uint32 project_id = 4;
716
+ */
717
+ projectId: number;
718
+ };
719
+
720
+ /**
721
+ * Describes the message api.v1.SetChannelProjectRequest.
722
+ * Use `create(SetChannelProjectRequestSchema)` to create a new message.
723
+ */
724
+ export declare const SetChannelProjectRequestSchema: GenMessage<SetChannelProjectRequest>;
725
+
726
+ /**
727
+ * @generated from message api.v1.SetChannelProjectResponse
728
+ */
729
+ export declare type SetChannelProjectResponse = Message<"api.v1.SetChannelProjectResponse"> & {
730
+ /**
731
+ * @generated from field: api.v1.IntegrationChannelProject mapping = 1;
732
+ */
733
+ mapping?: IntegrationChannelProject;
734
+ };
735
+
736
+ /**
737
+ * Describes the message api.v1.SetChannelProjectResponse.
738
+ * Use `create(SetChannelProjectResponseSchema)` to create a new message.
739
+ */
740
+ export declare const SetChannelProjectResponseSchema: GenMessage<SetChannelProjectResponse>;
741
+
742
+ /**
743
+ * @generated from message api.v1.DeleteChannelProjectRequest
744
+ */
745
+ export declare type DeleteChannelProjectRequest = Message<"api.v1.DeleteChannelProjectRequest"> & {
746
+ /**
747
+ * @generated from field: uint32 mapping_id = 1;
748
+ */
749
+ mappingId: number;
750
+ };
751
+
752
+ /**
753
+ * Describes the message api.v1.DeleteChannelProjectRequest.
754
+ * Use `create(DeleteChannelProjectRequestSchema)` to create a new message.
755
+ */
756
+ export declare const DeleteChannelProjectRequestSchema: GenMessage<DeleteChannelProjectRequest>;
757
+
594
758
  /**
595
759
  * @generated from message api.v1.SetDmOptInRequest
596
760
  */
@@ -628,6 +792,316 @@ export declare type SetDmOptInResponse = Message<"api.v1.SetDmOptInResponse"> &
628
792
  */
629
793
  export declare const SetDmOptInResponseSchema: GenMessage<SetDmOptInResponse>;
630
794
 
795
+ /**
796
+ * An AI model offered in the picker.
797
+ *
798
+ * @generated from message api.v1.AiModel
799
+ */
800
+ export declare type AiModel = Message<"api.v1.AiModel"> & {
801
+ /**
802
+ * provider model id, e.g. "anthropic/claude-sonnet-4.6"
803
+ *
804
+ * @generated from field: string id = 1;
805
+ */
806
+ id: string;
807
+
808
+ /**
809
+ * @generated from field: string display_name = 2;
810
+ */
811
+ displayName: string;
812
+
813
+ /**
814
+ * @generated from field: string description = 3;
815
+ */
816
+ description: string;
817
+
818
+ /**
819
+ * tier groups curated models by tradeoff: "frontier", "balanced", "fast".
820
+ * Empty for models that come from the full catalog rather than the shortlist.
821
+ *
822
+ * @generated from field: string tier = 4;
823
+ */
824
+ tier: string;
825
+
826
+ /**
827
+ * one line on when to pick this model
828
+ *
829
+ * @generated from field: string note = 5;
830
+ */
831
+ note: string;
832
+
833
+ /**
834
+ * the default pick within its tier
835
+ *
836
+ * @generated from field: bool recommended = 6;
837
+ */
838
+ recommended: boolean;
839
+
840
+ /**
841
+ * on the vetted shortlist
842
+ *
843
+ * @generated from field: bool curated = 7;
844
+ */
845
+ curated: boolean;
846
+
847
+ /**
848
+ * agent workflows are unusable without tool calling
849
+ *
850
+ * @generated from field: bool supports_tools = 8;
851
+ */
852
+ supportsTools: boolean;
853
+
854
+ /**
855
+ * @generated from field: uint32 context_window = 9;
856
+ */
857
+ contextWindow: number;
858
+
859
+ /**
860
+ * Prices are USD per token, as quoted by the provider. Zero means unknown.
861
+ *
862
+ * @generated from field: double prompt_price = 10;
863
+ */
864
+ promptPrice: number;
865
+
866
+ /**
867
+ * @generated from field: double completion_price = 11;
868
+ */
869
+ completionPrice: number;
870
+ };
871
+
872
+ /**
873
+ * Describes the message api.v1.AiModel.
874
+ * Use `create(AiModelSchema)` to create a new message.
875
+ */
876
+ export declare const AiModelSchema: GenMessage<AiModel>;
877
+
878
+ /**
879
+ * @generated from message api.v1.ConnectApiKeyRequest
880
+ */
881
+ export declare type ConnectApiKeyRequest = Message<"api.v1.ConnectApiKeyRequest"> & {
882
+ /**
883
+ * @generated from field: string provider = 1;
884
+ */
885
+ provider: string;
886
+
887
+ /**
888
+ * The provider API key. Write-only: it is encrypted at rest and never returned.
889
+ *
890
+ * @generated from field: string api_key = 2;
891
+ */
892
+ apiKey: string;
893
+ };
894
+
895
+ /**
896
+ * Describes the message api.v1.ConnectApiKeyRequest.
897
+ * Use `create(ConnectApiKeyRequestSchema)` to create a new message.
898
+ */
899
+ export declare const ConnectApiKeyRequestSchema: GenMessage<ConnectApiKeyRequest>;
900
+
901
+ /**
902
+ * @generated from message api.v1.ConnectApiKeyResponse
903
+ */
904
+ export declare type ConnectApiKeyResponse = Message<"api.v1.ConnectApiKeyResponse"> & {
905
+ /**
906
+ * @generated from field: api.v1.Integration integration = 1;
907
+ */
908
+ integration?: Integration;
909
+ };
910
+
911
+ /**
912
+ * Describes the message api.v1.ConnectApiKeyResponse.
913
+ * Use `create(ConnectApiKeyResponseSchema)` to create a new message.
914
+ */
915
+ export declare const ConnectApiKeyResponseSchema: GenMessage<ConnectApiKeyResponse>;
916
+
917
+ /**
918
+ * @generated from message api.v1.GetAiProviderSettingsRequest
919
+ */
920
+ export declare type GetAiProviderSettingsRequest = Message<"api.v1.GetAiProviderSettingsRequest"> & {
921
+ };
922
+
923
+ /**
924
+ * Describes the message api.v1.GetAiProviderSettingsRequest.
925
+ * Use `create(GetAiProviderSettingsRequestSchema)` to create a new message.
926
+ */
927
+ export declare const GetAiProviderSettingsRequestSchema: GenMessage<GetAiProviderSettingsRequest>;
928
+
929
+ /**
930
+ * @generated from message api.v1.GetAiProviderSettingsResponse
931
+ */
932
+ export declare type GetAiProviderSettingsResponse = Message<"api.v1.GetAiProviderSettingsResponse"> & {
933
+ /**
934
+ * connected is false when the company has brought no key. Every AI feature is
935
+ * unavailable in that state, since there is no platform key to fall back to.
936
+ *
937
+ * @generated from field: bool connected = 1;
938
+ */
939
+ connected: boolean;
940
+
941
+ /**
942
+ * @generated from field: api.v1.Integration integration = 2;
943
+ */
944
+ integration?: Integration;
945
+
946
+ /**
947
+ * @generated from field: string provider = 3;
948
+ */
949
+ provider: string;
950
+
951
+ /**
952
+ * effective_model is what a run would use right now, and model_source records
953
+ * whether that came from the project, the company, or the built-in default.
954
+ *
955
+ * @generated from field: string effective_model = 4;
956
+ */
957
+ effectiveModel: string;
958
+
959
+ /**
960
+ * @generated from field: string model_source = 5;
961
+ */
962
+ modelSource: string;
963
+
964
+ /**
965
+ * the company-wide setting
966
+ *
967
+ * @generated from field: string default_model = 6;
968
+ */
969
+ defaultModel: string;
970
+ };
971
+
972
+ /**
973
+ * Describes the message api.v1.GetAiProviderSettingsResponse.
974
+ * Use `create(GetAiProviderSettingsResponseSchema)` to create a new message.
975
+ */
976
+ export declare const GetAiProviderSettingsResponseSchema: GenMessage<GetAiProviderSettingsResponse>;
977
+
978
+ /**
979
+ * @generated from message api.v1.SetAiDefaultModelRequest
980
+ */
981
+ export declare type SetAiDefaultModelRequest = Message<"api.v1.SetAiDefaultModelRequest"> & {
982
+ /**
983
+ * @generated from field: string model = 1;
984
+ */
985
+ model: string;
986
+ };
987
+
988
+ /**
989
+ * Describes the message api.v1.SetAiDefaultModelRequest.
990
+ * Use `create(SetAiDefaultModelRequestSchema)` to create a new message.
991
+ */
992
+ export declare const SetAiDefaultModelRequestSchema: GenMessage<SetAiDefaultModelRequest>;
993
+
994
+ /**
995
+ * @generated from message api.v1.SetAiDefaultModelResponse
996
+ */
997
+ export declare type SetAiDefaultModelResponse = Message<"api.v1.SetAiDefaultModelResponse"> & {
998
+ /**
999
+ * @generated from field: string model = 1;
1000
+ */
1001
+ model: string;
1002
+ };
1003
+
1004
+ /**
1005
+ * Describes the message api.v1.SetAiDefaultModelResponse.
1006
+ * Use `create(SetAiDefaultModelResponseSchema)` to create a new message.
1007
+ */
1008
+ export declare const SetAiDefaultModelResponseSchema: GenMessage<SetAiDefaultModelResponse>;
1009
+
1010
+ /**
1011
+ * @generated from message api.v1.SetProjectAiModelRequest
1012
+ */
1013
+ export declare type SetProjectAiModelRequest = Message<"api.v1.SetProjectAiModelRequest"> & {
1014
+ /**
1015
+ * @generated from field: uint32 project_id = 1;
1016
+ */
1017
+ projectId: number;
1018
+
1019
+ /**
1020
+ * Empty clears the override so the project inherits the company default.
1021
+ *
1022
+ * @generated from field: string model = 2;
1023
+ */
1024
+ model: string;
1025
+ };
1026
+
1027
+ /**
1028
+ * Describes the message api.v1.SetProjectAiModelRequest.
1029
+ * Use `create(SetProjectAiModelRequestSchema)` to create a new message.
1030
+ */
1031
+ export declare const SetProjectAiModelRequestSchema: GenMessage<SetProjectAiModelRequest>;
1032
+
1033
+ /**
1034
+ * @generated from message api.v1.SetProjectAiModelResponse
1035
+ */
1036
+ export declare type SetProjectAiModelResponse = Message<"api.v1.SetProjectAiModelResponse"> & {
1037
+ /**
1038
+ * @generated from field: uint32 project_id = 1;
1039
+ */
1040
+ projectId: number;
1041
+
1042
+ /**
1043
+ * @generated from field: string model = 2;
1044
+ */
1045
+ model: string;
1046
+
1047
+ /**
1048
+ * inherited is true when the override was cleared.
1049
+ *
1050
+ * @generated from field: bool inherited = 3;
1051
+ */
1052
+ inherited: boolean;
1053
+ };
1054
+
1055
+ /**
1056
+ * Describes the message api.v1.SetProjectAiModelResponse.
1057
+ * Use `create(SetProjectAiModelResponseSchema)` to create a new message.
1058
+ */
1059
+ export declare const SetProjectAiModelResponseSchema: GenMessage<SetProjectAiModelResponse>;
1060
+
1061
+ /**
1062
+ * @generated from message api.v1.ListAiModelsRequest
1063
+ */
1064
+ export declare type ListAiModelsRequest = Message<"api.v1.ListAiModelsRequest"> & {
1065
+ /**
1066
+ * include_all returns the provider's full live catalog instead of the curated
1067
+ * shortlist. Most catalog models advertise tool support without being reliable
1068
+ * at agentic use, so this is opt-in.
1069
+ *
1070
+ * @generated from field: bool include_all = 1;
1071
+ */
1072
+ includeAll: boolean;
1073
+ };
1074
+
1075
+ /**
1076
+ * Describes the message api.v1.ListAiModelsRequest.
1077
+ * Use `create(ListAiModelsRequestSchema)` to create a new message.
1078
+ */
1079
+ export declare const ListAiModelsRequestSchema: GenMessage<ListAiModelsRequest>;
1080
+
1081
+ /**
1082
+ * @generated from message api.v1.ListAiModelsResponse
1083
+ */
1084
+ export declare type ListAiModelsResponse = Message<"api.v1.ListAiModelsResponse"> & {
1085
+ /**
1086
+ * @generated from field: repeated api.v1.AiModel models = 1;
1087
+ */
1088
+ models: AiModel[];
1089
+
1090
+ /**
1091
+ * catalog_available is false when the full catalog could not be fetched, in
1092
+ * which case models holds the curated shortlist alone.
1093
+ *
1094
+ * @generated from field: bool catalog_available = 2;
1095
+ */
1096
+ catalogAvailable: boolean;
1097
+ };
1098
+
1099
+ /**
1100
+ * Describes the message api.v1.ListAiModelsResponse.
1101
+ * Use `create(ListAiModelsResponseSchema)` to create a new message.
1102
+ */
1103
+ export declare const ListAiModelsResponseSchema: GenMessage<ListAiModelsResponse>;
1104
+
631
1105
  /**
632
1106
  * IntegrationService manages third-party integrations: catalog, OAuth connect,
633
1107
  * CRUD, routing rules, and per-user DM preferences. Provider is a string so new
@@ -736,6 +1210,36 @@ export declare const IntegrationService: GenService<{
736
1210
  input: typeof DeleteRouteRequestSchema;
737
1211
  output: typeof EmptySchema;
738
1212
  },
1213
+ /**
1214
+ * List the channel -> project filing map.
1215
+ *
1216
+ * @generated from rpc api.v1.IntegrationService.ListChannelProjects
1217
+ */
1218
+ listChannelProjects: {
1219
+ methodKind: "unary";
1220
+ input: typeof ListChannelProjectsRequestSchema;
1221
+ output: typeof ListChannelProjectsResponseSchema;
1222
+ },
1223
+ /**
1224
+ * Create or repoint a channel -> project mapping.
1225
+ *
1226
+ * @generated from rpc api.v1.IntegrationService.SetChannelProject
1227
+ */
1228
+ setChannelProject: {
1229
+ methodKind: "unary";
1230
+ input: typeof SetChannelProjectRequestSchema;
1231
+ output: typeof SetChannelProjectResponseSchema;
1232
+ },
1233
+ /**
1234
+ * Remove a channel -> project mapping, returning the channel to unmapped.
1235
+ *
1236
+ * @generated from rpc api.v1.IntegrationService.DeleteChannelProject
1237
+ */
1238
+ deleteChannelProject: {
1239
+ methodKind: "unary";
1240
+ input: typeof DeleteChannelProjectRequestSchema;
1241
+ output: typeof EmptySchema;
1242
+ },
739
1243
  /**
740
1244
  * Set the current user's DM opt-in for an integration.
741
1245
  *
@@ -746,5 +1250,60 @@ export declare const IntegrationService: GenService<{
746
1250
  input: typeof SetDmOptInRequestSchema;
747
1251
  output: typeof SetDmOptInResponseSchema;
748
1252
  },
1253
+ /**
1254
+ * Connect an API-key provider (OpenRouter) by pasting a key. The key is
1255
+ * validated against the provider before the connection is stored, so an
1256
+ * invalid credential fails here rather than during a later workflow run.
1257
+ *
1258
+ * @generated from rpc api.v1.IntegrationService.ConnectApiKey
1259
+ */
1260
+ connectApiKey: {
1261
+ methodKind: "unary";
1262
+ input: typeof ConnectApiKeyRequestSchema;
1263
+ output: typeof ConnectApiKeyResponseSchema;
1264
+ },
1265
+ /**
1266
+ * The company's effective AI provider settings: whether a provider is
1267
+ * connected, which model applies, and where that model was decided.
1268
+ *
1269
+ * @generated from rpc api.v1.IntegrationService.GetAiProviderSettings
1270
+ */
1271
+ getAiProviderSettings: {
1272
+ methodKind: "unary";
1273
+ input: typeof GetAiProviderSettingsRequestSchema;
1274
+ output: typeof GetAiProviderSettingsResponseSchema;
1275
+ },
1276
+ /**
1277
+ * Set the company-wide default model.
1278
+ *
1279
+ * @generated from rpc api.v1.IntegrationService.SetAiDefaultModel
1280
+ */
1281
+ setAiDefaultModel: {
1282
+ methodKind: "unary";
1283
+ input: typeof SetAiDefaultModelRequestSchema;
1284
+ output: typeof SetAiDefaultModelResponseSchema;
1285
+ },
1286
+ /**
1287
+ * Set or clear a project's model override. An empty model clears it and the
1288
+ * project inherits the company default.
1289
+ *
1290
+ * @generated from rpc api.v1.IntegrationService.SetProjectAiModel
1291
+ */
1292
+ setProjectAiModel: {
1293
+ methodKind: "unary";
1294
+ input: typeof SetProjectAiModelRequestSchema;
1295
+ output: typeof SetProjectAiModelResponseSchema;
1296
+ },
1297
+ /**
1298
+ * List selectable models: the curated shortlist by default, or the provider's
1299
+ * full live catalog when include_all is set.
1300
+ *
1301
+ * @generated from rpc api.v1.IntegrationService.ListAiModels
1302
+ */
1303
+ listAiModels: {
1304
+ methodKind: "unary";
1305
+ input: typeof ListAiModelsRequestSchema;
1306
+ output: typeof ListAiModelsResponseSchema;
1307
+ },
749
1308
  }>;
750
1309