Skip to repository content

tenant.openagents/omega

No repository description is available.

OpenAgents Git authority 2026-07-28T05:18:48.298Z Public web read
NIP-34 coordinate30617:7649603503856e5148d571eac2766b288a8ff1e9e35d380337a1d2b0015b4f92:omega
MaintainersHidden in public view
References2 branches · 1 tag
Read-only clonegit clone https://openagents.com/git/tenant.openagents/omega.git
Browse files

lsp.proto

1124 lines · 23.4 KB · text
1syntax = "proto3";
2package zed.messages;
3
4import "buffer.proto";
5
6message GetDefinition {
7  uint64 project_id = 1;
8  uint64 buffer_id = 2;
9  Anchor position = 3;
10  repeated VectorClockEntry version = 4;
11  reserved 5;
12}
13
14message GetDefinitionResponse {
15  repeated LocationLink links = 1;
16}
17
18message GetEditPredictionDefinition {
19  uint64 project_id = 1;
20  uint64 buffer_id = 2;
21  Anchor position = 3;
22  repeated VectorClockEntry version = 4;
23}
24
25message GetEditPredictionDefinitionResponse {
26  repeated EditPredictionDefinition definitions = 1;
27}
28
29message EditPredictionDefinition {
30  uint64 worktree_id = 1;
31  string path = 2;
32  PointUtf16 start = 3;
33  PointUtf16 end = 4;
34}
35
36message GetDeclaration {
37  uint64 project_id = 1;
38  uint64 buffer_id = 2;
39  Anchor position = 3;
40  repeated VectorClockEntry version = 4;
41}
42
43message GetDeclarationResponse {
44  repeated LocationLink links = 1;
45}
46
47message GetTypeDefinition {
48  uint64 project_id = 1;
49  uint64 buffer_id = 2;
50  Anchor position = 3;
51  repeated VectorClockEntry version = 4;
52  reserved 5;
53}
54
55message GetTypeDefinitionResponse {
56  repeated LocationLink links = 1;
57}
58
59message GetEditPredictionTypeDefinition {
60  uint64 project_id = 1;
61  uint64 buffer_id = 2;
62  Anchor position = 3;
63  repeated VectorClockEntry version = 4;
64}
65
66message GetEditPredictionTypeDefinitionResponse {
67  repeated EditPredictionDefinition definitions = 1;
68}
69
70message GetImplementation {
71  uint64 project_id = 1;
72  uint64 buffer_id = 2;
73  Anchor position = 3;
74  repeated VectorClockEntry version = 4;
75}
76
77message GetImplementationResponse {
78  repeated LocationLink links = 1;
79}
80
81message GetReferences {
82  uint64 project_id = 1;
83  uint64 buffer_id = 2;
84  Anchor position = 3;
85  repeated VectorClockEntry version = 4;
86}
87
88message GetReferencesResponse {
89  repeated Location locations = 1;
90}
91
92message GetDocumentHighlights {
93  uint64 project_id = 1;
94  uint64 buffer_id = 2;
95  Anchor position = 3;
96  repeated VectorClockEntry version = 4;
97}
98
99message GetDocumentHighlightsResponse {
100  repeated DocumentHighlight highlights = 1;
101}
102
103message LocationLink {
104  optional Location origin = 1;
105  Location target = 2;
106}
107
108message DocumentHighlight {
109  Kind kind = 1;
110  Anchor start = 2;
111  Anchor end = 3;
112
113  enum Kind {
114    Text = 0;
115    Read = 1;
116    Write = 2;
117  }
118}
119
120message GetProjectSymbols {
121  uint64 project_id = 1;
122  string query = 2;
123}
124
125message GetProjectSymbolsResponse {
126  repeated Symbol symbols = 4;
127}
128
129message Symbol {
130  uint64 source_worktree_id = 1;
131  uint64 worktree_id = 2;
132  string language_server_name = 3;
133  string name = 4;
134  int32 kind = 5;
135  string path = 6;
136  // Cannot use generate anchors for unopened files,
137  // so we are forced to use point coords instead
138  PointUtf16 start = 7;
139  PointUtf16 end = 8;
140  bytes signature = 9;
141  uint64 language_server_id = 10;
142  optional string container_name = 11;
143}
144
145message GetDocumentSymbols {
146  uint64 project_id = 1;
147  uint64 buffer_id = 2;
148  repeated VectorClockEntry version = 3;
149}
150
151message GetDocumentSymbolsResponse {
152  repeated DocumentSymbol symbols = 1;
153}
154
155message GetDocumentLinks {
156  uint64 project_id = 1;
157  uint64 buffer_id = 2;
158  repeated VectorClockEntry version = 3;
159}
160
161message GetDocumentLinksResponse {
162  repeated DocumentLinkProto links = 1;
163  repeated VectorClockEntry version = 2;
164}
165
166message DocumentLinkProto {
167  optional AnchorRange range = 1;
168  optional string target = 2;
169  optional string tooltip = 3;
170  optional string data = 4;
171}
172
173message ResolveDocumentLink {
174  uint64 project_id = 1;
175  uint64 buffer_id = 2;
176  uint64 language_server_id = 3;
177  bytes lsp_link = 4;
178}
179
180message ResolveDocumentLinkResponse {
181  bytes lsp_link = 1;
182}
183
184message DocumentSymbol {
185  string name = 1;
186  int32 kind = 2;
187  // Cannot use generate anchors for unopened files,
188  // so we are forced to use point coords instead
189  PointUtf16 start = 3;
190  PointUtf16 end = 4;
191  PointUtf16 selection_start = 5;
192  PointUtf16 selection_end = 6;
193  repeated DocumentSymbol children = 7;
194}
195
196message InlayHints {
197  uint64 project_id = 1;
198  uint64 buffer_id = 2;
199  Anchor start = 3;
200  Anchor end = 4;
201  repeated VectorClockEntry version = 5;
202}
203
204message InlayHintsResponse {
205  repeated InlayHint hints = 1;
206  repeated VectorClockEntry version = 2;
207}
208
209message SemanticTokens {
210  uint64 project_id = 1;
211  uint64 buffer_id = 2;
212  optional uint64 for_server = 3;
213  repeated VectorClockEntry version = 4;
214}
215
216message SemanticTokensResponse {
217  // Only `data` or `edits` may be set.
218  // `oneof` does not allow `repeated` fields.
219  repeated uint32 data = 1;
220  repeated SemanticTokensEdit edits = 2;
221  optional string result_id = 3;
222  repeated VectorClockEntry version = 4;
223}
224
225message SemanticTokensEdit {
226  uint32 start = 1;
227  uint32 delete_count = 2;
228  repeated uint32 data = 3;
229}
230
231message RefreshSemanticTokens {
232  uint64 project_id = 1;
233  uint64 server_id = 2;
234  optional uint64 request_id = 3;
235}
236
237message PointUtf16 {
238  uint32 row = 1;
239  uint32 column = 2;
240}
241
242message LspExtExpandMacro {
243  uint64 project_id = 1;
244  uint64 buffer_id = 2;
245  Anchor position = 3;
246}
247
248message LspExtExpandMacroResponse {
249  string name = 1;
250  string expansion = 2;
251}
252
253message LspExtOpenDocs {
254  uint64 project_id = 1;
255  uint64 buffer_id = 2;
256  Anchor position = 3;
257}
258
259message LspExtOpenDocsResponse {
260  optional string web = 1;
261  optional string local = 2;
262}
263
264message LspExtSwitchSourceHeader {
265  uint64 project_id = 1;
266  uint64 buffer_id = 2;
267}
268
269message LspExtSwitchSourceHeaderResponse {
270  string target_file = 1;
271}
272
273message LspExtGoToParentModule {
274  uint64 project_id = 1;
275  uint64 buffer_id = 2;
276  Anchor position = 3;
277}
278
279message LspExtGoToParentModuleResponse {
280  repeated LocationLink links = 1;
281}
282
283message GetCompletionsResponse {
284  repeated Completion completions = 1;
285  repeated VectorClockEntry version = 2;
286  // `!is_complete`, inverted for a default of `is_complete = true`
287  bool can_reuse = 3;
288}
289
290message ApplyCompletionAdditionalEdits {
291  uint64 project_id = 1;
292  uint64 buffer_id = 2;
293  Completion completion = 3;
294  repeated AnchorRange all_commit_ranges = 4;
295}
296
297message ApplyCompletionAdditionalEditsResponse {
298  Transaction transaction = 1;
299}
300
301message Completion {
302  Anchor old_replace_start = 1;
303  Anchor old_replace_end = 2;
304  string new_text = 3;
305  uint64 server_id = 4;
306  bytes lsp_completion = 5;
307  bool resolved = 6;
308  Source source = 7;
309  optional bytes lsp_defaults = 8;
310  optional Anchor buffer_word_start = 9;
311  optional Anchor buffer_word_end = 10;
312  Anchor old_insert_start = 11;
313  Anchor old_insert_end = 12;
314  optional string sort_text = 13;
315
316  enum Source {
317    Lsp = 0;
318    Custom = 1;
319    BufferWord = 2;
320    Dap = 3;
321  }
322}
323
324message GetCodeActions {
325  uint64 project_id = 1;
326  uint64 buffer_id = 2;
327  Anchor start = 3;
328  Anchor end = 4;
329  repeated VectorClockEntry version = 5;
330}
331
332message GetCodeActionsResponse {
333  repeated CodeAction actions = 1;
334  repeated VectorClockEntry version = 2;
335}
336
337message GetSignatureHelp {
338  uint64 project_id = 1;
339  uint64 buffer_id = 2;
340  Anchor position = 3;
341  repeated VectorClockEntry version = 4;
342}
343
344message GetSignatureHelpResponse {
345  optional SignatureHelp signature_help = 1;
346}
347
348message SignatureHelp {
349  repeated SignatureInformation signatures = 1;
350  optional uint32 active_signature = 2;
351  optional uint32 active_parameter = 3;
352}
353
354message SignatureInformation {
355  string label = 1;
356  optional Documentation documentation = 2;
357  repeated ParameterInformation parameters = 3;
358  optional uint32 active_parameter = 4;
359}
360
361message Documentation {
362  oneof content {
363    string value = 1;
364    MarkupContent markup_content = 2;
365  }
366}
367
368enum MarkupKind {
369  PlainText = 0;
370  Markdown = 1;
371}
372
373message ParameterInformation {
374  oneof label {
375    string simple = 1;
376    LabelOffsets label_offsets = 2;
377  }
378  optional Documentation documentation = 3;
379}
380
381message LabelOffsets {
382  uint32 start = 1;
383  uint32 end = 2;
384}
385
386message GetHover {
387  uint64 project_id = 1;
388  uint64 buffer_id = 2;
389  Anchor position = 3;
390  repeated VectorClockEntry version = 5;
391}
392
393message GetHoverResponse {
394  optional Anchor start = 1;
395  optional Anchor end = 2;
396  repeated HoverBlock contents = 3;
397}
398
399message HoverBlock {
400  string text = 1;
401  optional string language = 2;
402  bool is_markdown = 3;
403}
404
405message ApplyCodeAction {
406  uint64 project_id = 1;
407  uint64 buffer_id = 2;
408  CodeAction action = 3;
409}
410
411message ResolveCodeAction {
412  uint64 project_id = 1;
413  uint64 buffer_id = 2;
414  CodeAction action = 3;
415}
416
417message ResolveCodeActionResponse {
418  CodeAction action = 1;
419}
420
421message ApplyCodeActionResponse {
422  ProjectTransaction transaction = 1;
423}
424
425message PrepareRename {
426  uint64 project_id = 1;
427  uint64 buffer_id = 2;
428  Anchor position = 3;
429  repeated VectorClockEntry version = 4;
430}
431
432message PrepareRenameResponse {
433  bool can_rename = 1;
434  Anchor start = 2;
435  Anchor end = 3;
436  repeated VectorClockEntry version = 4;
437  bool only_unprepared_rename_supported = 5;
438}
439
440message PerformRename {
441  uint64 project_id = 1;
442  uint64 buffer_id = 2;
443  Anchor position = 3;
444  string new_name = 4;
445  repeated VectorClockEntry version = 5;
446}
447
448message OnTypeFormatting {
449  uint64 project_id = 1;
450  uint64 buffer_id = 2;
451  Anchor position = 3;
452  string trigger = 4;
453  repeated VectorClockEntry version = 5;
454}
455
456message OnTypeFormattingResponse {
457  Transaction transaction = 1;
458}
459
460message LinkedEditingRange {
461  uint64 project_id = 1;
462  uint64 buffer_id = 2;
463  Anchor position = 3;
464  repeated VectorClockEntry version = 4;
465}
466
467message LinkedEditingRangeResponse {
468  repeated AnchorRange items = 1;
469  repeated VectorClockEntry version = 4;
470}
471
472message InlayHint {
473  Anchor position = 1;
474  InlayHintLabel label = 2;
475  optional string kind = 3;
476  bool padding_left = 4;
477  bool padding_right = 5;
478  InlayHintTooltip tooltip = 6;
479  ResolveState resolve_state = 7;
480}
481
482message InlayHintLabel {
483  oneof label {
484    string value = 1;
485    InlayHintLabelParts label_parts = 2;
486  }
487}
488
489message InlayHintLabelParts {
490  repeated InlayHintLabelPart parts = 1;
491}
492
493message InlayHintLabelPart {
494  string value = 1;
495  InlayHintLabelPartTooltip tooltip = 2;
496  optional string location_url = 3;
497  PointUtf16 location_range_start = 4;
498  PointUtf16 location_range_end = 5;
499  optional uint64 language_server_id = 6;
500}
501
502message InlayHintTooltip {
503  oneof content {
504    string value = 1;
505    MarkupContent markup_content = 2;
506  }
507}
508
509message InlayHintLabelPartTooltip {
510  oneof content {
511    string value = 1;
512    MarkupContent markup_content = 2;
513  }
514}
515
516message ResolveState {
517  State state = 1;
518  LspResolveState lsp_resolve_state = 2;
519
520  enum State {
521    Resolved = 0;
522    CanResolve = 1;
523    Resolving = 2;
524  }
525
526  message LspResolveState {
527    optional string value = 1;
528    uint64 server_id = 2;
529  }
530}
531
532// This type is used to resolve more than just
533// the documentation, but for backwards-compatibility
534// reasons we can't rename the type.
535message ResolveCompletionDocumentation {
536  uint64 project_id = 1;
537  uint64 language_server_id = 2;
538  bytes lsp_completion = 3;
539  uint64 buffer_id = 4;
540}
541
542message ResolveCompletionDocumentationResponse {
543  string documentation = 1;
544  bool documentation_is_markdown = 2;
545  Anchor old_replace_start = 3;
546  Anchor old_replace_end = 4;
547  string new_text = 5;
548  bytes lsp_completion = 6;
549  Anchor old_insert_start = 7;
550  Anchor old_insert_end = 8;
551}
552
553message ResolveInlayHint {
554  uint64 project_id = 1;
555  uint64 buffer_id = 2;
556  uint64 language_server_id = 3;
557  InlayHint hint = 4;
558}
559
560message ResolveInlayHintResponse {
561  InlayHint hint = 1;
562}
563
564message RefreshInlayHints {
565  uint64 project_id = 1;
566  uint64 server_id = 2;
567  optional uint64 request_id = 3;
568}
569
570message CodeLens {
571  bytes lsp_lens = 1;
572}
573
574message GetCodeLens {
575  uint64 project_id = 1;
576  uint64 buffer_id = 2;
577  repeated VectorClockEntry version = 3;
578}
579
580message GetCodeLensResponse {
581  repeated CodeAction lens_actions = 1;
582  repeated VectorClockEntry version = 2;
583}
584
585message RefreshCodeLens {
586  uint64 project_id = 1;
587  optional uint64 server_id = 2;
588}
589
590message RefreshDocumentColors {
591  uint64 project_id = 1;
592  optional uint64 server_id = 2;
593}
594
595message RefreshDocumentLinks {
596  uint64 project_id = 1;
597  optional uint64 server_id = 2;
598}
599
600message RefreshFoldingRanges {
601  uint64 project_id = 1;
602  optional uint64 server_id = 2;
603}
604
605message RefreshDocumentSymbols {
606  uint64 project_id = 1;
607  optional uint64 server_id = 2;
608}
609
610message MarkupContent {
611  bool is_markdown = 1;
612  string value = 2;
613}
614
615message PerformRenameResponse {
616  ProjectTransaction transaction = 2;
617}
618
619message CodeAction {
620  uint64 server_id = 1;
621  Anchor start = 2;
622  Anchor end = 3;
623  bytes lsp_action = 4;
624  Kind kind = 5;
625  bool resolved = 6;
626  enum Kind {
627    Action = 0;
628    Command = 1;
629    CodeLens = 2;
630  }
631}
632
633message LanguageServer {
634  uint64 id = 1;
635  string name = 2;
636  optional uint64 worktree_id = 3;
637  optional string language_name = 4;
638}
639
640message StartLanguageServer {
641  uint64 project_id = 1;
642  LanguageServer server = 2;
643  string capabilities = 3;
644}
645
646message UpdateDiagnosticSummary {
647  uint64 project_id = 1;
648  uint64 worktree_id = 2;
649  DiagnosticSummary summary = 3;
650  repeated DiagnosticSummary more_summaries = 4;
651}
652
653message DiagnosticSummary {
654  string path = 1;
655  uint64 language_server_id = 2;
656  uint32 error_count = 3;
657  uint32 warning_count = 4;
658}
659
660message UpdateLanguageServer {
661  uint64 project_id = 1;
662  uint64 language_server_id = 2;
663  optional string server_name = 8;
664  oneof variant {
665    LspWorkStart work_start = 3;
666    LspWorkProgress work_progress = 4;
667    LspWorkEnd work_end = 5;
668    LspDiskBasedDiagnosticsUpdating disk_based_diagnostics_updating = 6;
669    LspDiskBasedDiagnosticsUpdated disk_based_diagnostics_updated = 7;
670    StatusUpdate status_update = 9;
671    RegisteredForBuffer registered_for_buffer = 10;
672    ServerMetadataUpdated metadata_updated = 11;
673    ServerRemoved removed = 12;
674  }
675}
676
677message ProgressToken {
678  oneof value {
679    int32 number = 1;
680    string string = 2;
681  }
682}
683
684message LspWorkStart {
685  reserved 1;
686  optional string title = 4;
687  optional string message = 2;
688  optional uint32 percentage = 3;
689  optional bool is_cancellable = 5;
690  ProgressToken token = 6;
691}
692
693message LspWorkProgress {
694  reserved 1;
695  optional string message = 2;
696  optional uint32 percentage = 3;
697  optional bool is_cancellable = 4;
698  ProgressToken token = 5;
699}
700
701message LspWorkEnd {
702  reserved 1;
703  ProgressToken token = 2;
704}
705
706message LspDiskBasedDiagnosticsUpdating {}
707
708message LspDiskBasedDiagnosticsUpdated {}
709
710message ServerRemoved {}
711
712message StatusUpdate {
713  optional string message = 1;
714  oneof status {
715    ServerBinaryStatus binary = 2;
716    ServerHealth health = 3;
717  }
718}
719
720enum ServerHealth {
721  OK = 0;
722  WARNING = 1;
723  ERROR = 2;
724}
725
726enum ServerBinaryStatus {
727  NONE = 0;
728  CHECKING_FOR_UPDATE = 1;
729  DOWNLOADING = 2;
730  STARTING = 3;
731  STOPPING = 4;
732  STOPPED = 5;
733  FAILED = 6;
734}
735
736message RegisteredForBuffer {
737  string buffer_abs_path = 1;
738  uint64 buffer_id = 2;
739}
740
741message LanguageServerBinaryInfo {
742  string path = 1;
743  repeated string arguments = 2;
744}
745
746message ServerMetadataUpdated {
747  optional string capabilities = 1;
748  optional LanguageServerBinaryInfo binary = 2;
749  optional string configuration = 3;
750  repeated string workspace_folders = 4;
751}
752
753message LanguageServerLog {
754  uint64 project_id = 1;
755  uint64 language_server_id = 2;
756  string message = 3;
757  oneof log_type {
758    LogMessage log = 4;
759    TraceMessage trace = 5;
760    RpcMessage rpc = 6;
761  }
762}
763
764message LogMessage {
765  LogLevel level = 1;
766
767  enum LogLevel {
768    LOG = 0;
769    INFO = 1;
770    WARNING = 2;
771    ERROR = 3;
772  }
773}
774
775message TraceMessage {
776  optional string verbose_info = 1;
777}
778
779message RpcMessage {
780  Kind kind = 1;
781  optional uint64 elapsed_nanos = 2;
782
783  enum Kind {
784    RECEIVED = 0;
785    SENT = 1;
786  }
787}
788
789message LspLogTrace {
790  optional string message = 1;
791}
792
793message ApplyCodeActionKind {
794  uint64 project_id = 1;
795  string kind = 2;
796  repeated uint64 buffer_ids = 3;
797}
798
799message ApplyCodeActionKindResponse {
800  ProjectTransaction transaction = 1;
801}
802
803message RegisterBufferWithLanguageServers {
804  uint64 project_id = 1;
805  uint64 buffer_id = 2;
806  repeated LanguageServerSelector only_servers = 3;
807}
808
809enum FormatTrigger {
810  Save = 0;
811  Manual = 1;
812}
813
814message OpenBufferForSymbol {
815  uint64 project_id = 1;
816  Symbol symbol = 2;
817}
818
819message OpenBufferForSymbolResponse {
820  uint64 buffer_id = 1;
821}
822
823message BufferFormatRanges {
824  uint64 buffer_id = 1;
825  repeated AnchorRange ranges = 2;
826}
827
828message FormatBuffers {
829  uint64 project_id = 1;
830  FormatTrigger trigger = 2;
831  repeated uint64 buffer_ids = 3;
832  repeated BufferFormatRanges buffer_ranges = 4;
833}
834
835message FormatBuffersResponse {
836  ProjectTransaction transaction = 1;
837}
838
839message GetCompletions {
840  uint64 project_id = 1;
841  uint64 buffer_id = 2;
842  Anchor position = 3;
843  repeated VectorClockEntry version = 4;
844  optional uint64 server_id = 5;
845}
846
847message CancelLanguageServerWork {
848  uint64 project_id = 1;
849
850  oneof work {
851    Buffers buffers = 2;
852    LanguageServerWork language_server_work = 3;
853  }
854
855  message Buffers {
856    repeated uint64 buffer_ids = 2;
857  }
858
859  message LanguageServerWork {
860    uint64 language_server_id = 1;
861    reserved 2;
862    optional ProgressToken token = 3;
863  }
864}
865
866message LanguageServerPromptRequest {
867  uint64 project_id = 1;
868
869  oneof level {
870    Info info = 2;
871    Warning warning = 3;
872    Critical critical = 4;
873  }
874
875  message Info {}
876  message Warning {}
877  message Critical {}
878
879  string message = 5;
880  repeated string actions = 6;
881  string lsp_name = 7;
882}
883
884message LanguageServerPromptResponse {
885  optional uint64 action_response = 1;
886}
887
888message GetDocumentColor {
889  uint64 project_id = 1;
890  uint64 buffer_id = 2;
891  repeated VectorClockEntry version = 3;
892}
893
894message GetDocumentColorResponse {
895  repeated ColorInformation colors = 1;
896  repeated VectorClockEntry version = 2;
897}
898
899message ColorInformation {
900  PointUtf16 lsp_range_start = 1;
901  PointUtf16 lsp_range_end = 2;
902  float red = 3;
903  float green = 4;
904  float blue = 5;
905  float alpha = 6;
906}
907
908message GetColorPresentation {
909  uint64 project_id = 1;
910  uint64 buffer_id = 2;
911  ColorInformation color = 3;
912  uint64 server_id = 4;
913}
914
915message GetColorPresentationResponse {
916  repeated ColorPresentation presentations = 1;
917}
918
919message ColorPresentation {
920  string label = 1;
921  optional TextEdit text_edit = 2;
922  repeated TextEdit additional_text_edits = 3;
923}
924
925message TextEdit {
926  string new_text = 1;
927  PointUtf16 lsp_range_start = 2;
928  PointUtf16 lsp_range_end = 3;
929}
930
931message LspQuery {
932  uint64 project_id = 1;
933  uint64 lsp_request_id = 2;
934  optional uint64 server_id = 15;
935  oneof request {
936    GetReferences get_references = 3;
937    GetDocumentColor get_document_color = 4;
938    GetHover get_hover = 5;
939    GetCodeActions get_code_actions = 6;
940    GetSignatureHelp get_signature_help = 7;
941    GetCodeLens get_code_lens = 8;
942    GetDocumentDiagnostics get_document_diagnostics = 9;
943    GetDefinition get_definition = 10;
944    GetDeclaration get_declaration = 11;
945    GetTypeDefinition get_type_definition = 12;
946    GetImplementation get_implementation = 13;
947    InlayHints inlay_hints = 14;
948    SemanticTokens semantic_tokens = 16;
949    GetFoldingRanges get_folding_ranges = 17;
950    GetDocumentSymbols get_document_symbols = 18;
951    GetDocumentLinks get_document_links = 19;
952    GetEditPredictionDefinition get_edit_prediction_definition = 20;
953    GetEditPredictionTypeDefinition get_edit_prediction_type_definition = 21;
954  }
955}
956
957message LspQueryResponse {
958  uint64 project_id = 1;
959  uint64 lsp_request_id = 2;
960  repeated LspResponse responses = 3;
961}
962
963message LspResponse {
964  oneof response {
965    GetHoverResponse get_hover_response = 1;
966    GetCodeActionsResponse get_code_actions_response = 2;
967    GetSignatureHelpResponse get_signature_help_response = 3;
968    GetCodeLensResponse get_code_lens_response = 4;
969    GetDocumentDiagnosticsResponse get_document_diagnostics_response = 5;
970    GetDocumentColorResponse get_document_color_response = 6;
971    GetDefinitionResponse get_definition_response = 8;
972    GetDeclarationResponse get_declaration_response = 9;
973    GetTypeDefinitionResponse get_type_definition_response = 10;
974    GetImplementationResponse get_implementation_response = 11;
975    GetReferencesResponse get_references_response = 12;
976    InlayHintsResponse inlay_hints_response = 13;
977    SemanticTokensResponse semantic_tokens_response = 14;
978    GetFoldingRangesResponse get_folding_ranges_response = 15;
979    GetDocumentSymbolsResponse get_document_symbols_response = 16;
980    GetDocumentLinksResponse get_document_links_response = 17;
981    GetEditPredictionDefinitionResponse get_edit_prediction_definition_response = 18;
982    GetEditPredictionTypeDefinitionResponse get_edit_prediction_type_definition_response = 19;
983  }
984  uint64 server_id = 7;
985}
986
987message AllLanguageServers {}
988
989message LanguageServerSelector {
990  oneof selector {
991    uint64 server_id = 1;
992    string name = 2;
993  }
994}
995
996message RestartLanguageServers {
997  uint64 project_id = 1;
998  repeated uint64 buffer_ids = 2;
999  repeated LanguageServerSelector only_servers = 3;
1000  bool all = 4;
1001}
1002
1003message StopLanguageServers {
1004  uint64 project_id = 1;
1005  repeated uint64 buffer_ids = 2;
1006  repeated LanguageServerSelector also_servers = 3;
1007  bool all = 4;
1008}
1009
1010message LspExtRunnables {
1011  uint64 project_id = 1;
1012  uint64 buffer_id = 2;
1013  optional Anchor position = 3;
1014}
1015
1016message LspExtRunnablesResponse {
1017  repeated LspRunnable runnables = 1;
1018}
1019
1020message LspRunnable {
1021  bytes task_template = 1;
1022  optional LocationLink location = 2;
1023}
1024
1025message LspExtCancelFlycheck {
1026  uint64 project_id = 1;
1027  uint64 language_server_id = 2;
1028}
1029
1030message LspExtRunFlycheck {
1031  uint64 project_id = 1;
1032  optional uint64 buffer_id = 2;
1033  uint64 language_server_id = 3;
1034  bool current_file_only = 4;
1035}
1036
1037message LspExtClearFlycheck {
1038  uint64 project_id = 1;
1039  uint64 language_server_id = 2;
1040}
1041
1042message LspDiagnosticRelatedInformation {
1043  optional string location_url = 1;
1044  PointUtf16 location_range_start = 2;
1045  PointUtf16 location_range_end = 3;
1046  string message = 4;
1047}
1048
1049enum LspDiagnosticTag {
1050  None = 0;
1051  Unnecessary = 1;
1052  Deprecated = 2;
1053}
1054
1055message LspDiagnostic {
1056  PointUtf16 start = 1;
1057  PointUtf16 end = 2;
1058  Severity severity = 3;
1059  optional string code = 4;
1060  optional string code_description = 5;
1061  optional string source = 6;
1062  string message = 7;
1063  repeated LspDiagnosticRelatedInformation related_information = 8;
1064  repeated LspDiagnosticTag tags = 9;
1065  optional string data = 10;
1066
1067  enum Severity {
1068    None = 0;
1069    Error = 1;
1070    Warning = 2;
1071    Information = 3;
1072    Hint = 4;
1073  }
1074}
1075
1076message GetDocumentDiagnostics {
1077  uint64 project_id = 1;
1078  uint64 buffer_id = 2;
1079  repeated VectorClockEntry version = 3;
1080}
1081
1082message GetDocumentDiagnosticsResponse {
1083  repeated PulledDiagnostics pulled_diagnostics = 1;
1084}
1085
1086message PulledDiagnostics {
1087  uint64 server_id = 1;
1088  string uri = 2;
1089  optional string result_id = 3;
1090  bool changed = 4;
1091  repeated LspDiagnostic diagnostics = 5;
1092  optional string registration_id = 6;
1093}
1094
1095message PullWorkspaceDiagnostics {
1096  uint64 project_id = 1;
1097  uint64 server_id = 2;
1098}
1099
1100message ToggleLspLogs {
1101  uint64 project_id = 1;
1102  LogType log_type = 2;
1103  uint64 server_id = 3;
1104  bool enabled = 4;
1105
1106  enum LogType {
1107    LOG = 0;
1108    TRACE = 1;
1109    RPC = 2;
1110  }
1111}
1112
1113message GetFoldingRanges {
1114  uint64 project_id = 1;
1115  uint64 buffer_id = 2;
1116  repeated VectorClockEntry version = 3;
1117}
1118
1119message GetFoldingRangesResponse {
1120  repeated AnchorRange ranges = 1;
1121  repeated VectorClockEntry version = 2;
1122  repeated string collapsed_texts = 3;
1123}
1124
Served at tenant.openagents/omega Member data and write actions are omitted.