1basePath: /v1
2definitions:
3 catwalk.Model:
4 properties:
5 can_reason:
6 type: boolean
7 context_window:
8 type: integer
9 cost_per_1m_in:
10 type: number
11 cost_per_1m_in_cached:
12 type: number
13 cost_per_1m_out:
14 type: number
15 cost_per_1m_out_cached:
16 type: number
17 default_max_tokens:
18 type: integer
19 default_reasoning_effort:
20 type: string
21 id:
22 type: string
23 name:
24 type: string
25 options:
26 $ref: '#/definitions/catwalk.ModelOptions'
27 reasoning_levels:
28 items:
29 type: string
30 type: array
31 supports_attachments:
32 type: boolean
33 type: object
34 catwalk.ModelOptions:
35 properties:
36 frequency_penalty:
37 type: number
38 presence_penalty:
39 type: number
40 provider_options:
41 additionalProperties: {}
42 type: object
43 temperature:
44 type: number
45 top_k:
46 type: integer
47 top_p:
48 type: number
49 type: object
50 config.Attribution:
51 properties:
52 co_authored_by:
53 type: boolean
54 generated_with:
55 type: boolean
56 trailer_style:
57 $ref: '#/definitions/config.TrailerStyle'
58 type: object
59 config.Completions:
60 properties:
61 max_depth:
62 type: integer
63 max_items:
64 type: integer
65 type: object
66 config.LSPConfig:
67 properties:
68 args:
69 items:
70 type: string
71 type: array
72 command:
73 type: string
74 disabled:
75 type: boolean
76 env:
77 additionalProperties:
78 type: string
79 type: object
80 filetypes:
81 items:
82 type: string
83 type: array
84 init_options:
85 additionalProperties: {}
86 type: object
87 options:
88 additionalProperties: {}
89 type: object
90 root_markers:
91 items:
92 type: string
93 type: array
94 timeout:
95 type: integer
96 type: object
97 config.LSPs:
98 additionalProperties:
99 $ref: '#/definitions/config.LSPConfig'
100 type: object
101 config.MCPConfig:
102 properties:
103 args:
104 items:
105 type: string
106 type: array
107 command:
108 type: string
109 disabled:
110 type: boolean
111 disabled_tools:
112 items:
113 type: string
114 type: array
115 env:
116 additionalProperties:
117 type: string
118 type: object
119 headers:
120 additionalProperties:
121 type: string
122 description: 'TODO: maybe make it possible to get the value from the env'
123 type: object
124 timeout:
125 type: integer
126 type:
127 $ref: '#/definitions/config.MCPType'
128 url:
129 type: string
130 type: object
131 config.MCPType:
132 enum:
133 - stdio
134 - sse
135 - http
136 type: string
137 x-enum-varnames:
138 - MCPStdio
139 - MCPSSE
140 - MCPHttp
141 config.MCPs:
142 additionalProperties:
143 $ref: '#/definitions/config.MCPConfig'
144 type: object
145 config.Permissions:
146 properties:
147 allowed_tools:
148 items:
149 type: string
150 type: array
151 type: object
152 config.Scope:
153 enum:
154 - 0
155 - 1
156 type: integer
157 x-enum-varnames:
158 - ScopeGlobal
159 - ScopeWorkspace
160 config.SelectedModel:
161 properties:
162 frequency_penalty:
163 type: number
164 max_tokens:
165 description: Overrides the default model configuration.
166 type: integer
167 model:
168 description: |-
169 The model id as used by the provider API.
170 Required.
171 type: string
172 presence_penalty:
173 type: number
174 provider:
175 description: |-
176 The model provider, same as the key/id used in the providers config.
177 Required.
178 type: string
179 provider_options:
180 additionalProperties: {}
181 description: Override provider specific options.
182 type: object
183 reasoning_effort:
184 description: Only used by models that use the openai provider and need this
185 set.
186 type: string
187 temperature:
188 type: number
189 think:
190 description: Used by anthropic models that can reason to indicate if the model
191 should think.
192 type: boolean
193 top_k:
194 type: integer
195 top_p:
196 type: number
197 type: object
198 config.SelectedModelType:
199 enum:
200 - large
201 - small
202 type: string
203 x-enum-varnames:
204 - SelectedModelTypeLarge
205 - SelectedModelTypeSmall
206 config.TUIOptions:
207 properties:
208 compact_mode:
209 type: boolean
210 completions:
211 $ref: '#/definitions/config.Completions'
212 diff_mode:
213 type: string
214 transparent:
215 type: boolean
216 type: object
217 config.ToolGrep:
218 properties:
219 timeout:
220 $ref: '#/definitions/time.Duration'
221 type: object
222 config.ToolLs:
223 properties:
224 max_depth:
225 type: integer
226 max_items:
227 type: integer
228 type: object
229 config.Tools:
230 properties:
231 grep:
232 $ref: '#/definitions/config.ToolGrep'
233 ls:
234 $ref: '#/definitions/config.ToolLs'
235 type: object
236 config.TrailerStyle:
237 enum:
238 - none
239 - co-authored-by
240 - assisted-by
241 type: string
242 x-enum-varnames:
243 - TrailerStyleNone
244 - TrailerStyleCoAuthoredBy
245 - TrailerStyleAssistedBy
246 csync.Map-string-config_ProviderConfig:
247 type: object
248 github_com_charmbracelet_crush_internal_config.Config:
249 properties:
250 $schema:
251 type: string
252 lsp:
253 $ref: '#/definitions/config.LSPs'
254 mcp:
255 $ref: '#/definitions/config.MCPs'
256 models:
257 additionalProperties:
258 $ref: '#/definitions/config.SelectedModel'
259 description: We currently only support large/small as values here.
260 type: object
261 options:
262 $ref: '#/definitions/github_com_charmbracelet_crush_internal_config.Options'
263 permissions:
264 $ref: '#/definitions/config.Permissions'
265 providers:
266 allOf:
267 - $ref: '#/definitions/csync.Map-string-config_ProviderConfig'
268 description: The providers that are configured
269 recent_models:
270 additionalProperties:
271 items:
272 $ref: '#/definitions/config.SelectedModel'
273 type: array
274 description: Recently used models stored in the data directory config.
275 type: object
276 tools:
277 $ref: '#/definitions/config.Tools'
278 type: object
279 github_com_charmbracelet_crush_internal_config.Options:
280 properties:
281 attribution:
282 $ref: '#/definitions/config.Attribution'
283 auto_lsp:
284 type: boolean
285 context_paths:
286 items:
287 type: string
288 type: array
289 data_directory:
290 description: Relative to the cwd
291 type: string
292 debug:
293 type: boolean
294 debug_lsp:
295 type: boolean
296 disable_auto_summarize:
297 type: boolean
298 disable_default_providers:
299 type: boolean
300 disable_metrics:
301 type: boolean
302 disable_notifications:
303 type: boolean
304 disable_provider_auto_update:
305 type: boolean
306 disabled_tools:
307 items:
308 type: string
309 type: array
310 initialize_as:
311 type: string
312 progress:
313 type: boolean
314 skills_paths:
315 items:
316 type: string
317 type: array
318 tui:
319 $ref: '#/definitions/config.TUIOptions'
320 type: object
321 github_com_charmbracelet_crush_internal_proto.Message:
322 properties:
323 created_at:
324 type: integer
325 id:
326 type: string
327 model:
328 type: string
329 parts:
330 items: {}
331 type: array
332 provider:
333 type: string
334 role:
335 $ref: '#/definitions/proto.MessageRole'
336 session_id:
337 type: string
338 updated_at:
339 type: integer
340 type: object
341 lsp.ServerState:
342 enum:
343 - 0
344 - 1
345 - 2
346 - 3
347 - 4
348 - 5
349 type: integer
350 x-enum-varnames:
351 - StateUnstarted
352 - StateStarting
353 - StateReady
354 - StateError
355 - StateStopped
356 - StateDisabled
357 proto.AgentInfo:
358 properties:
359 is_busy:
360 type: boolean
361 is_ready:
362 type: boolean
363 model:
364 $ref: '#/definitions/catwalk.Model'
365 model_cfg:
366 $ref: '#/definitions/config.SelectedModel'
367 type: object
368 proto.AgentMessage:
369 properties:
370 attachments:
371 items:
372 $ref: '#/definitions/proto.Attachment'
373 type: array
374 prompt:
375 type: string
376 session_id:
377 type: string
378 type: object
379 proto.AgentSession:
380 properties:
381 completion_tokens:
382 type: integer
383 cost:
384 type: number
385 created_at:
386 type: integer
387 id:
388 type: string
389 is_busy:
390 type: boolean
391 message_count:
392 type: integer
393 parent_session_id:
394 type: string
395 prompt_tokens:
396 type: integer
397 summary_message_id:
398 type: string
399 title:
400 type: string
401 updated_at:
402 type: integer
403 type: object
404 proto.Attachment:
405 properties:
406 content:
407 items:
408 type: integer
409 type: array
410 file_name:
411 type: string
412 file_path:
413 type: string
414 mime_type:
415 type: string
416 type: object
417 proto.ConfigCompactRequest:
418 properties:
419 enabled:
420 type: boolean
421 scope:
422 $ref: '#/definitions/config.Scope'
423 type: object
424 proto.ConfigModelRequest:
425 properties:
426 model:
427 $ref: '#/definitions/config.SelectedModel'
428 model_type:
429 $ref: '#/definitions/config.SelectedModelType'
430 scope:
431 $ref: '#/definitions/config.Scope'
432 type: object
433 proto.ConfigProviderKeyRequest:
434 properties:
435 api_key: {}
436 provider_id:
437 type: string
438 scope:
439 $ref: '#/definitions/config.Scope'
440 type: object
441 proto.ConfigRefreshOAuthRequest:
442 properties:
443 provider_id:
444 type: string
445 scope:
446 $ref: '#/definitions/config.Scope'
447 type: object
448 proto.ConfigRemoveRequest:
449 properties:
450 key:
451 type: string
452 scope:
453 $ref: '#/definitions/config.Scope'
454 type: object
455 proto.ConfigSetRequest:
456 properties:
457 key:
458 type: string
459 scope:
460 $ref: '#/definitions/config.Scope'
461 value: {}
462 type: object
463 proto.Error:
464 properties:
465 message:
466 type: string
467 type: object
468 proto.File:
469 properties:
470 content:
471 type: string
472 created_at:
473 type: integer
474 id:
475 type: string
476 path:
477 type: string
478 session_id:
479 type: string
480 updated_at:
481 type: integer
482 version:
483 type: integer
484 type: object
485 proto.FileTrackerReadRequest:
486 properties:
487 path:
488 type: string
489 session_id:
490 type: string
491 type: object
492 proto.ImportCopilotResponse:
493 properties:
494 success:
495 type: boolean
496 token: {}
497 type: object
498 proto.LSPClientInfo:
499 properties:
500 connected_at:
501 type: string
502 diagnostic_count:
503 type: integer
504 error: {}
505 name:
506 type: string
507 state:
508 $ref: '#/definitions/lsp.ServerState'
509 type: object
510 proto.LSPStartRequest:
511 properties:
512 path:
513 type: string
514 type: object
515 proto.MCPClientInfo:
516 properties:
517 connected_at:
518 type: string
519 error: {}
520 name:
521 type: string
522 prompt_count:
523 type: integer
524 resource_count:
525 type: integer
526 state:
527 $ref: '#/definitions/proto.MCPState'
528 tool_count:
529 type: integer
530 type: object
531 proto.MCPGetPromptRequest:
532 properties:
533 args:
534 additionalProperties:
535 type: string
536 type: object
537 client_id:
538 type: string
539 prompt_id:
540 type: string
541 type: object
542 proto.MCPGetPromptResponse:
543 properties:
544 prompt:
545 type: string
546 type: object
547 proto.MCPNameRequest:
548 properties:
549 name:
550 type: string
551 type: object
552 proto.MCPReadResourceRequest:
553 properties:
554 name:
555 type: string
556 uri:
557 type: string
558 type: object
559 proto.MCPState:
560 enum:
561 - 0
562 - 1
563 - 2
564 - 3
565 type: integer
566 x-enum-varnames:
567 - MCPStateDisabled
568 - MCPStateStarting
569 - MCPStateConnected
570 - MCPStateError
571 proto.MessageRole:
572 enum:
573 - assistant
574 - user
575 - system
576 - tool
577 type: string
578 x-enum-varnames:
579 - Assistant
580 - User
581 - System
582 - Tool
583 proto.PermissionAction:
584 enum:
585 - allow
586 - allow_session
587 - deny
588 type: string
589 x-enum-varnames:
590 - PermissionAllow
591 - PermissionAllowForSession
592 - PermissionDeny
593 proto.PermissionGrant:
594 properties:
595 action:
596 $ref: '#/definitions/proto.PermissionAction'
597 permission:
598 $ref: '#/definitions/proto.PermissionRequest'
599 type: object
600 proto.PermissionRequest:
601 properties:
602 action:
603 type: string
604 description:
605 type: string
606 id:
607 type: string
608 params: {}
609 path:
610 type: string
611 session_id:
612 type: string
613 tool_call_id:
614 type: string
615 tool_name:
616 type: string
617 type: object
618 proto.PermissionSkipRequest:
619 properties:
620 skip:
621 type: boolean
622 type: object
623 proto.ProjectInitPromptResponse:
624 properties:
625 prompt:
626 type: string
627 type: object
628 proto.ProjectNeedsInitResponse:
629 properties:
630 needs_init:
631 type: boolean
632 type: object
633 proto.ServerControl:
634 properties:
635 command:
636 type: string
637 type: object
638 proto.Session:
639 properties:
640 completion_tokens:
641 type: integer
642 cost:
643 type: number
644 created_at:
645 type: integer
646 id:
647 type: string
648 message_count:
649 type: integer
650 parent_session_id:
651 type: string
652 prompt_tokens:
653 type: integer
654 summary_message_id:
655 type: string
656 title:
657 type: string
658 updated_at:
659 type: integer
660 type: object
661 proto.VersionInfo:
662 properties:
663 commit:
664 type: string
665 go_version:
666 type: string
667 platform:
668 type: string
669 version:
670 type: string
671 type: object
672 proto.Workspace:
673 properties:
674 config:
675 $ref: '#/definitions/github_com_charmbracelet_crush_internal_config.Config'
676 data_dir:
677 type: string
678 debug:
679 type: boolean
680 env:
681 items:
682 type: string
683 type: array
684 id:
685 type: string
686 path:
687 type: string
688 version:
689 type: string
690 yolo:
691 type: boolean
692 type: object
693 time.Duration:
694 enum:
695 - -9223372036854775808
696 - 9223372036854775807
697 - 1
698 - 1000
699 - 1000000
700 - 1000000000
701 - 60000000000
702 - 3600000000000
703 format: int64
704 type: integer
705 x-enum-varnames:
706 - minDuration
707 - maxDuration
708 - Nanosecond
709 - Microsecond
710 - Millisecond
711 - Second
712 - Minute
713 - Hour
714info:
715 contact:
716 name: Charm
717 url: https://charm.sh
718 description: Crush is a terminal-based AI coding assistant. This API is served over
719 a Unix socket (or Windows named pipe) and provides programmatic access to workspaces,
720 sessions, agents, LSP, MCP, and more.
721 license:
722 name: MIT
723 url: https://github.com/charmbracelet/crush/blob/main/LICENSE
724 title: Crush API
725 version: "1.0"
726paths:
727 /config:
728 get:
729 produces:
730 - application/json
731 responses:
732 "200":
733 description: OK
734 schema:
735 type: object
736 summary: Get server config
737 tags:
738 - system
739 /control:
740 post:
741 consumes:
742 - application/json
743 parameters:
744 - description: Control command (e.g. shutdown)
745 in: body
746 name: request
747 required: true
748 schema:
749 $ref: '#/definitions/proto.ServerControl'
750 responses:
751 "200":
752 description: OK
753 "400":
754 description: Bad Request
755 schema:
756 $ref: '#/definitions/proto.Error'
757 summary: Send server control command
758 tags:
759 - system
760 /health:
761 get:
762 responses:
763 "200":
764 description: OK
765 summary: Health check
766 tags:
767 - system
768 /version:
769 get:
770 produces:
771 - application/json
772 responses:
773 "200":
774 description: OK
775 schema:
776 $ref: '#/definitions/proto.VersionInfo'
777 summary: Get server version
778 tags:
779 - system
780 /workspaces:
781 get:
782 produces:
783 - application/json
784 responses:
785 "200":
786 description: OK
787 schema:
788 items:
789 $ref: '#/definitions/proto.Workspace'
790 type: array
791 summary: List workspaces
792 tags:
793 - workspaces
794 post:
795 consumes:
796 - application/json
797 parameters:
798 - description: Workspace creation params
799 in: body
800 name: request
801 required: true
802 schema:
803 $ref: '#/definitions/proto.Workspace'
804 produces:
805 - application/json
806 responses:
807 "200":
808 description: OK
809 schema:
810 $ref: '#/definitions/proto.Workspace'
811 "400":
812 description: Bad Request
813 schema:
814 $ref: '#/definitions/proto.Error'
815 "500":
816 description: Internal Server Error
817 schema:
818 $ref: '#/definitions/proto.Error'
819 summary: Create workspace
820 tags:
821 - workspaces
822 /workspaces/{id}:
823 delete:
824 parameters:
825 - description: Workspace ID
826 in: path
827 name: id
828 required: true
829 type: string
830 responses:
831 "200":
832 description: OK
833 "404":
834 description: Not Found
835 schema:
836 $ref: '#/definitions/proto.Error'
837 summary: Delete workspace
838 tags:
839 - workspaces
840 get:
841 parameters:
842 - description: Workspace ID
843 in: path
844 name: id
845 required: true
846 type: string
847 produces:
848 - application/json
849 responses:
850 "200":
851 description: OK
852 schema:
853 $ref: '#/definitions/proto.Workspace'
854 "404":
855 description: Not Found
856 schema:
857 $ref: '#/definitions/proto.Error'
858 "500":
859 description: Internal Server Error
860 schema:
861 $ref: '#/definitions/proto.Error'
862 summary: Get workspace
863 tags:
864 - workspaces
865 /workspaces/{id}/agent:
866 get:
867 parameters:
868 - description: Workspace ID
869 in: path
870 name: id
871 required: true
872 type: string
873 produces:
874 - application/json
875 responses:
876 "200":
877 description: OK
878 schema:
879 $ref: '#/definitions/proto.AgentInfo'
880 "404":
881 description: Not Found
882 schema:
883 $ref: '#/definitions/proto.Error'
884 "500":
885 description: Internal Server Error
886 schema:
887 $ref: '#/definitions/proto.Error'
888 summary: Get agent info
889 tags:
890 - agent
891 post:
892 consumes:
893 - application/json
894 parameters:
895 - description: Workspace ID
896 in: path
897 name: id
898 required: true
899 type: string
900 - description: Agent message
901 in: body
902 name: request
903 required: true
904 schema:
905 $ref: '#/definitions/proto.AgentMessage'
906 responses:
907 "200":
908 description: OK
909 "400":
910 description: Bad Request
911 schema:
912 $ref: '#/definitions/proto.Error'
913 "404":
914 description: Not Found
915 schema:
916 $ref: '#/definitions/proto.Error'
917 "500":
918 description: Internal Server Error
919 schema:
920 $ref: '#/definitions/proto.Error'
921 summary: Send message to agent
922 tags:
923 - agent
924 /workspaces/{id}/agent/default-small-model:
925 get:
926 parameters:
927 - description: Workspace ID
928 in: path
929 name: id
930 required: true
931 type: string
932 - description: Provider ID
933 in: query
934 name: provider_id
935 type: string
936 produces:
937 - application/json
938 responses:
939 "200":
940 description: OK
941 schema:
942 type: object
943 "404":
944 description: Not Found
945 schema:
946 $ref: '#/definitions/proto.Error'
947 "500":
948 description: Internal Server Error
949 schema:
950 $ref: '#/definitions/proto.Error'
951 summary: Get default small model
952 tags:
953 - agent
954 /workspaces/{id}/agent/init:
955 post:
956 parameters:
957 - description: Workspace ID
958 in: path
959 name: id
960 required: true
961 type: string
962 responses:
963 "200":
964 description: OK
965 "404":
966 description: Not Found
967 schema:
968 $ref: '#/definitions/proto.Error'
969 "500":
970 description: Internal Server Error
971 schema:
972 $ref: '#/definitions/proto.Error'
973 summary: Initialize agent
974 tags:
975 - agent
976 /workspaces/{id}/agent/sessions/{sid}:
977 get:
978 parameters:
979 - description: Workspace ID
980 in: path
981 name: id
982 required: true
983 type: string
984 - description: Session ID
985 in: path
986 name: sid
987 required: true
988 type: string
989 produces:
990 - application/json
991 responses:
992 "200":
993 description: OK
994 schema:
995 $ref: '#/definitions/proto.AgentSession'
996 "404":
997 description: Not Found
998 schema:
999 $ref: '#/definitions/proto.Error'
1000 "500":
1001 description: Internal Server Error
1002 schema:
1003 $ref: '#/definitions/proto.Error'
1004 summary: Get agent session
1005 tags:
1006 - agent
1007 /workspaces/{id}/agent/sessions/{sid}/cancel:
1008 post:
1009 parameters:
1010 - description: Workspace ID
1011 in: path
1012 name: id
1013 required: true
1014 type: string
1015 - description: Session ID
1016 in: path
1017 name: sid
1018 required: true
1019 type: string
1020 responses:
1021 "200":
1022 description: OK
1023 "404":
1024 description: Not Found
1025 schema:
1026 $ref: '#/definitions/proto.Error'
1027 "500":
1028 description: Internal Server Error
1029 schema:
1030 $ref: '#/definitions/proto.Error'
1031 summary: Cancel agent session
1032 tags:
1033 - agent
1034 /workspaces/{id}/agent/sessions/{sid}/prompts/clear:
1035 post:
1036 parameters:
1037 - description: Workspace ID
1038 in: path
1039 name: id
1040 required: true
1041 type: string
1042 - description: Session ID
1043 in: path
1044 name: sid
1045 required: true
1046 type: string
1047 responses:
1048 "200":
1049 description: OK
1050 "404":
1051 description: Not Found
1052 schema:
1053 $ref: '#/definitions/proto.Error'
1054 "500":
1055 description: Internal Server Error
1056 schema:
1057 $ref: '#/definitions/proto.Error'
1058 summary: Clear prompt queue
1059 tags:
1060 - agent
1061 /workspaces/{id}/agent/sessions/{sid}/prompts/list:
1062 get:
1063 parameters:
1064 - description: Workspace ID
1065 in: path
1066 name: id
1067 required: true
1068 type: string
1069 - description: Session ID
1070 in: path
1071 name: sid
1072 required: true
1073 type: string
1074 produces:
1075 - application/json
1076 responses:
1077 "200":
1078 description: OK
1079 schema:
1080 items:
1081 type: string
1082 type: array
1083 "404":
1084 description: Not Found
1085 schema:
1086 $ref: '#/definitions/proto.Error'
1087 "500":
1088 description: Internal Server Error
1089 schema:
1090 $ref: '#/definitions/proto.Error'
1091 summary: List queued prompts
1092 tags:
1093 - agent
1094 /workspaces/{id}/agent/sessions/{sid}/prompts/queued:
1095 get:
1096 parameters:
1097 - description: Workspace ID
1098 in: path
1099 name: id
1100 required: true
1101 type: string
1102 - description: Session ID
1103 in: path
1104 name: sid
1105 required: true
1106 type: string
1107 produces:
1108 - application/json
1109 responses:
1110 "200":
1111 description: OK
1112 schema:
1113 type: object
1114 "404":
1115 description: Not Found
1116 schema:
1117 $ref: '#/definitions/proto.Error'
1118 "500":
1119 description: Internal Server Error
1120 schema:
1121 $ref: '#/definitions/proto.Error'
1122 summary: Get queued prompt status
1123 tags:
1124 - agent
1125 /workspaces/{id}/agent/sessions/{sid}/summarize:
1126 post:
1127 parameters:
1128 - description: Workspace ID
1129 in: path
1130 name: id
1131 required: true
1132 type: string
1133 - description: Session ID
1134 in: path
1135 name: sid
1136 required: true
1137 type: string
1138 responses:
1139 "200":
1140 description: OK
1141 "404":
1142 description: Not Found
1143 schema:
1144 $ref: '#/definitions/proto.Error'
1145 "500":
1146 description: Internal Server Error
1147 schema:
1148 $ref: '#/definitions/proto.Error'
1149 summary: Summarize session
1150 tags:
1151 - agent
1152 /workspaces/{id}/agent/update:
1153 post:
1154 parameters:
1155 - description: Workspace ID
1156 in: path
1157 name: id
1158 required: true
1159 type: string
1160 responses:
1161 "200":
1162 description: OK
1163 "404":
1164 description: Not Found
1165 schema:
1166 $ref: '#/definitions/proto.Error'
1167 "500":
1168 description: Internal Server Error
1169 schema:
1170 $ref: '#/definitions/proto.Error'
1171 summary: Update agent
1172 tags:
1173 - agent
1174 /workspaces/{id}/config:
1175 get:
1176 parameters:
1177 - description: Workspace ID
1178 in: path
1179 name: id
1180 required: true
1181 type: string
1182 produces:
1183 - application/json
1184 responses:
1185 "200":
1186 description: OK
1187 schema:
1188 type: object
1189 "404":
1190 description: Not Found
1191 schema:
1192 $ref: '#/definitions/proto.Error'
1193 "500":
1194 description: Internal Server Error
1195 schema:
1196 $ref: '#/definitions/proto.Error'
1197 summary: Get workspace config
1198 tags:
1199 - workspaces
1200 /workspaces/{id}/config/compact:
1201 post:
1202 consumes:
1203 - application/json
1204 parameters:
1205 - description: Workspace ID
1206 in: path
1207 name: id
1208 required: true
1209 type: string
1210 - description: Config compact request
1211 in: body
1212 name: request
1213 required: true
1214 schema:
1215 $ref: '#/definitions/proto.ConfigCompactRequest'
1216 responses:
1217 "200":
1218 description: OK
1219 "400":
1220 description: Bad Request
1221 schema:
1222 $ref: '#/definitions/proto.Error'
1223 "404":
1224 description: Not Found
1225 schema:
1226 $ref: '#/definitions/proto.Error'
1227 "500":
1228 description: Internal Server Error
1229 schema:
1230 $ref: '#/definitions/proto.Error'
1231 summary: Set compact mode
1232 tags:
1233 - config
1234 /workspaces/{id}/config/import-copilot:
1235 post:
1236 parameters:
1237 - description: Workspace ID
1238 in: path
1239 name: id
1240 required: true
1241 type: string
1242 produces:
1243 - application/json
1244 responses:
1245 "200":
1246 description: OK
1247 schema:
1248 $ref: '#/definitions/proto.ImportCopilotResponse'
1249 "404":
1250 description: Not Found
1251 schema:
1252 $ref: '#/definitions/proto.Error'
1253 "500":
1254 description: Internal Server Error
1255 schema:
1256 $ref: '#/definitions/proto.Error'
1257 summary: Import Copilot credentials
1258 tags:
1259 - config
1260 /workspaces/{id}/config/model:
1261 post:
1262 consumes:
1263 - application/json
1264 parameters:
1265 - description: Workspace ID
1266 in: path
1267 name: id
1268 required: true
1269 type: string
1270 - description: Config model request
1271 in: body
1272 name: request
1273 required: true
1274 schema:
1275 $ref: '#/definitions/proto.ConfigModelRequest'
1276 responses:
1277 "200":
1278 description: OK
1279 "400":
1280 description: Bad Request
1281 schema:
1282 $ref: '#/definitions/proto.Error'
1283 "404":
1284 description: Not Found
1285 schema:
1286 $ref: '#/definitions/proto.Error'
1287 "500":
1288 description: Internal Server Error
1289 schema:
1290 $ref: '#/definitions/proto.Error'
1291 summary: Set the preferred model
1292 tags:
1293 - config
1294 /workspaces/{id}/config/provider-key:
1295 post:
1296 consumes:
1297 - application/json
1298 parameters:
1299 - description: Workspace ID
1300 in: path
1301 name: id
1302 required: true
1303 type: string
1304 - description: Config provider key request
1305 in: body
1306 name: request
1307 required: true
1308 schema:
1309 $ref: '#/definitions/proto.ConfigProviderKeyRequest'
1310 responses:
1311 "200":
1312 description: OK
1313 "400":
1314 description: Bad Request
1315 schema:
1316 $ref: '#/definitions/proto.Error'
1317 "404":
1318 description: Not Found
1319 schema:
1320 $ref: '#/definitions/proto.Error'
1321 "500":
1322 description: Internal Server Error
1323 schema:
1324 $ref: '#/definitions/proto.Error'
1325 summary: Set provider API key
1326 tags:
1327 - config
1328 /workspaces/{id}/config/refresh-oauth:
1329 post:
1330 consumes:
1331 - application/json
1332 parameters:
1333 - description: Workspace ID
1334 in: path
1335 name: id
1336 required: true
1337 type: string
1338 - description: Refresh OAuth request
1339 in: body
1340 name: request
1341 required: true
1342 schema:
1343 $ref: '#/definitions/proto.ConfigRefreshOAuthRequest'
1344 responses:
1345 "200":
1346 description: OK
1347 "400":
1348 description: Bad Request
1349 schema:
1350 $ref: '#/definitions/proto.Error'
1351 "404":
1352 description: Not Found
1353 schema:
1354 $ref: '#/definitions/proto.Error'
1355 "500":
1356 description: Internal Server Error
1357 schema:
1358 $ref: '#/definitions/proto.Error'
1359 summary: Refresh OAuth token
1360 tags:
1361 - config
1362 /workspaces/{id}/config/remove:
1363 post:
1364 consumes:
1365 - application/json
1366 parameters:
1367 - description: Workspace ID
1368 in: path
1369 name: id
1370 required: true
1371 type: string
1372 - description: Config remove request
1373 in: body
1374 name: request
1375 required: true
1376 schema:
1377 $ref: '#/definitions/proto.ConfigRemoveRequest'
1378 responses:
1379 "200":
1380 description: OK
1381 "400":
1382 description: Bad Request
1383 schema:
1384 $ref: '#/definitions/proto.Error'
1385 "404":
1386 description: Not Found
1387 schema:
1388 $ref: '#/definitions/proto.Error'
1389 "500":
1390 description: Internal Server Error
1391 schema:
1392 $ref: '#/definitions/proto.Error'
1393 summary: Remove a config field
1394 tags:
1395 - config
1396 /workspaces/{id}/config/set:
1397 post:
1398 consumes:
1399 - application/json
1400 parameters:
1401 - description: Workspace ID
1402 in: path
1403 name: id
1404 required: true
1405 type: string
1406 - description: Config set request
1407 in: body
1408 name: request
1409 required: true
1410 schema:
1411 $ref: '#/definitions/proto.ConfigSetRequest'
1412 responses:
1413 "200":
1414 description: OK
1415 "400":
1416 description: Bad Request
1417 schema:
1418 $ref: '#/definitions/proto.Error'
1419 "404":
1420 description: Not Found
1421 schema:
1422 $ref: '#/definitions/proto.Error'
1423 "500":
1424 description: Internal Server Error
1425 schema:
1426 $ref: '#/definitions/proto.Error'
1427 summary: Set a config field
1428 tags:
1429 - config
1430 /workspaces/{id}/events:
1431 get:
1432 parameters:
1433 - description: Workspace ID
1434 in: path
1435 name: id
1436 required: true
1437 type: string
1438 produces:
1439 - text/event-stream
1440 responses:
1441 "200":
1442 description: OK
1443 "404":
1444 description: Not Found
1445 schema:
1446 $ref: '#/definitions/proto.Error'
1447 "500":
1448 description: Internal Server Error
1449 schema:
1450 $ref: '#/definitions/proto.Error'
1451 summary: Stream workspace events (SSE)
1452 tags:
1453 - workspaces
1454 /workspaces/{id}/filetracker/lastread:
1455 get:
1456 parameters:
1457 - description: Workspace ID
1458 in: path
1459 name: id
1460 required: true
1461 type: string
1462 - description: Session ID
1463 in: query
1464 name: session_id
1465 type: string
1466 - description: File path
1467 in: query
1468 name: path
1469 required: true
1470 type: string
1471 produces:
1472 - application/json
1473 responses:
1474 "200":
1475 description: OK
1476 schema:
1477 type: object
1478 "404":
1479 description: Not Found
1480 schema:
1481 $ref: '#/definitions/proto.Error'
1482 "500":
1483 description: Internal Server Error
1484 schema:
1485 $ref: '#/definitions/proto.Error'
1486 summary: Get last read time for file
1487 tags:
1488 - filetracker
1489 /workspaces/{id}/filetracker/read:
1490 post:
1491 consumes:
1492 - application/json
1493 parameters:
1494 - description: Workspace ID
1495 in: path
1496 name: id
1497 required: true
1498 type: string
1499 - description: File tracker read request
1500 in: body
1501 name: request
1502 required: true
1503 schema:
1504 $ref: '#/definitions/proto.FileTrackerReadRequest'
1505 responses:
1506 "200":
1507 description: OK
1508 "400":
1509 description: Bad Request
1510 schema:
1511 $ref: '#/definitions/proto.Error'
1512 "404":
1513 description: Not Found
1514 schema:
1515 $ref: '#/definitions/proto.Error'
1516 "500":
1517 description: Internal Server Error
1518 schema:
1519 $ref: '#/definitions/proto.Error'
1520 summary: Record file read
1521 tags:
1522 - filetracker
1523 /workspaces/{id}/lsps:
1524 get:
1525 parameters:
1526 - description: Workspace ID
1527 in: path
1528 name: id
1529 required: true
1530 type: string
1531 produces:
1532 - application/json
1533 responses:
1534 "200":
1535 description: OK
1536 schema:
1537 additionalProperties:
1538 $ref: '#/definitions/proto.LSPClientInfo'
1539 type: object
1540 "404":
1541 description: Not Found
1542 schema:
1543 $ref: '#/definitions/proto.Error'
1544 "500":
1545 description: Internal Server Error
1546 schema:
1547 $ref: '#/definitions/proto.Error'
1548 summary: List LSP clients
1549 tags:
1550 - lsp
1551 /workspaces/{id}/lsps/{lsp}/diagnostics:
1552 get:
1553 parameters:
1554 - description: Workspace ID
1555 in: path
1556 name: id
1557 required: true
1558 type: string
1559 - description: LSP client name
1560 in: path
1561 name: lsp
1562 required: true
1563 type: string
1564 produces:
1565 - application/json
1566 responses:
1567 "200":
1568 description: OK
1569 schema:
1570 type: object
1571 "404":
1572 description: Not Found
1573 schema:
1574 $ref: '#/definitions/proto.Error'
1575 "500":
1576 description: Internal Server Error
1577 schema:
1578 $ref: '#/definitions/proto.Error'
1579 summary: Get LSP diagnostics
1580 tags:
1581 - lsp
1582 /workspaces/{id}/lsps/start:
1583 post:
1584 consumes:
1585 - application/json
1586 parameters:
1587 - description: Workspace ID
1588 in: path
1589 name: id
1590 required: true
1591 type: string
1592 - description: LSP start request
1593 in: body
1594 name: request
1595 required: true
1596 schema:
1597 $ref: '#/definitions/proto.LSPStartRequest'
1598 responses:
1599 "200":
1600 description: OK
1601 "400":
1602 description: Bad Request
1603 schema:
1604 $ref: '#/definitions/proto.Error'
1605 "404":
1606 description: Not Found
1607 schema:
1608 $ref: '#/definitions/proto.Error'
1609 "500":
1610 description: Internal Server Error
1611 schema:
1612 $ref: '#/definitions/proto.Error'
1613 summary: Start LSP server
1614 tags:
1615 - lsp
1616 /workspaces/{id}/lsps/stop:
1617 post:
1618 parameters:
1619 - description: Workspace ID
1620 in: path
1621 name: id
1622 required: true
1623 type: string
1624 responses:
1625 "200":
1626 description: OK
1627 "404":
1628 description: Not Found
1629 schema:
1630 $ref: '#/definitions/proto.Error'
1631 "500":
1632 description: Internal Server Error
1633 schema:
1634 $ref: '#/definitions/proto.Error'
1635 summary: Stop all LSP servers
1636 tags:
1637 - lsp
1638 /workspaces/{id}/mcp/get-prompt:
1639 post:
1640 consumes:
1641 - application/json
1642 parameters:
1643 - description: Workspace ID
1644 in: path
1645 name: id
1646 required: true
1647 type: string
1648 - description: MCP get prompt request
1649 in: body
1650 name: request
1651 required: true
1652 schema:
1653 $ref: '#/definitions/proto.MCPGetPromptRequest'
1654 produces:
1655 - application/json
1656 responses:
1657 "200":
1658 description: OK
1659 schema:
1660 $ref: '#/definitions/proto.MCPGetPromptResponse'
1661 "400":
1662 description: Bad Request
1663 schema:
1664 $ref: '#/definitions/proto.Error'
1665 "404":
1666 description: Not Found
1667 schema:
1668 $ref: '#/definitions/proto.Error'
1669 "500":
1670 description: Internal Server Error
1671 schema:
1672 $ref: '#/definitions/proto.Error'
1673 summary: Get MCP prompt
1674 tags:
1675 - mcp
1676 /workspaces/{id}/mcp/read-resource:
1677 post:
1678 consumes:
1679 - application/json
1680 parameters:
1681 - description: Workspace ID
1682 in: path
1683 name: id
1684 required: true
1685 type: string
1686 - description: MCP read resource request
1687 in: body
1688 name: request
1689 required: true
1690 schema:
1691 $ref: '#/definitions/proto.MCPReadResourceRequest'
1692 produces:
1693 - application/json
1694 responses:
1695 "200":
1696 description: OK
1697 schema:
1698 type: object
1699 "400":
1700 description: Bad Request
1701 schema:
1702 $ref: '#/definitions/proto.Error'
1703 "404":
1704 description: Not Found
1705 schema:
1706 $ref: '#/definitions/proto.Error'
1707 "500":
1708 description: Internal Server Error
1709 schema:
1710 $ref: '#/definitions/proto.Error'
1711 summary: Read MCP resource
1712 tags:
1713 - mcp
1714 /workspaces/{id}/mcp/refresh-prompts:
1715 post:
1716 consumes:
1717 - application/json
1718 parameters:
1719 - description: Workspace ID
1720 in: path
1721 name: id
1722 required: true
1723 type: string
1724 - description: MCP name request
1725 in: body
1726 name: request
1727 required: true
1728 schema:
1729 $ref: '#/definitions/proto.MCPNameRequest'
1730 responses:
1731 "200":
1732 description: OK
1733 "400":
1734 description: Bad Request
1735 schema:
1736 $ref: '#/definitions/proto.Error'
1737 "404":
1738 description: Not Found
1739 schema:
1740 $ref: '#/definitions/proto.Error'
1741 "500":
1742 description: Internal Server Error
1743 schema:
1744 $ref: '#/definitions/proto.Error'
1745 summary: Refresh MCP prompts
1746 tags:
1747 - mcp
1748 /workspaces/{id}/mcp/refresh-resources:
1749 post:
1750 consumes:
1751 - application/json
1752 parameters:
1753 - description: Workspace ID
1754 in: path
1755 name: id
1756 required: true
1757 type: string
1758 - description: MCP name request
1759 in: body
1760 name: request
1761 required: true
1762 schema:
1763 $ref: '#/definitions/proto.MCPNameRequest'
1764 responses:
1765 "200":
1766 description: OK
1767 "400":
1768 description: Bad Request
1769 schema:
1770 $ref: '#/definitions/proto.Error'
1771 "404":
1772 description: Not Found
1773 schema:
1774 $ref: '#/definitions/proto.Error'
1775 "500":
1776 description: Internal Server Error
1777 schema:
1778 $ref: '#/definitions/proto.Error'
1779 summary: Refresh MCP resources
1780 tags:
1781 - mcp
1782 /workspaces/{id}/mcp/refresh-tools:
1783 post:
1784 consumes:
1785 - application/json
1786 parameters:
1787 - description: Workspace ID
1788 in: path
1789 name: id
1790 required: true
1791 type: string
1792 - description: MCP name request
1793 in: body
1794 name: request
1795 required: true
1796 schema:
1797 $ref: '#/definitions/proto.MCPNameRequest'
1798 responses:
1799 "200":
1800 description: OK
1801 "400":
1802 description: Bad Request
1803 schema:
1804 $ref: '#/definitions/proto.Error'
1805 "404":
1806 description: Not Found
1807 schema:
1808 $ref: '#/definitions/proto.Error'
1809 "500":
1810 description: Internal Server Error
1811 schema:
1812 $ref: '#/definitions/proto.Error'
1813 summary: Refresh MCP tools
1814 tags:
1815 - mcp
1816 /workspaces/{id}/mcp/states:
1817 get:
1818 parameters:
1819 - description: Workspace ID
1820 in: path
1821 name: id
1822 required: true
1823 type: string
1824 produces:
1825 - application/json
1826 responses:
1827 "200":
1828 description: OK
1829 schema:
1830 additionalProperties:
1831 $ref: '#/definitions/proto.MCPClientInfo'
1832 type: object
1833 "404":
1834 description: Not Found
1835 schema:
1836 $ref: '#/definitions/proto.Error'
1837 "500":
1838 description: Internal Server Error
1839 schema:
1840 $ref: '#/definitions/proto.Error'
1841 summary: Get MCP client states
1842 tags:
1843 - mcp
1844 /workspaces/{id}/messages/user:
1845 get:
1846 parameters:
1847 - description: Workspace ID
1848 in: path
1849 name: id
1850 required: true
1851 type: string
1852 produces:
1853 - application/json
1854 responses:
1855 "200":
1856 description: OK
1857 schema:
1858 items:
1859 $ref: '#/definitions/github_com_charmbracelet_crush_internal_proto.Message'
1860 type: array
1861 "404":
1862 description: Not Found
1863 schema:
1864 $ref: '#/definitions/proto.Error'
1865 "500":
1866 description: Internal Server Error
1867 schema:
1868 $ref: '#/definitions/proto.Error'
1869 summary: Get all user messages for workspace
1870 tags:
1871 - workspaces
1872 /workspaces/{id}/permissions/grant:
1873 post:
1874 consumes:
1875 - application/json
1876 parameters:
1877 - description: Workspace ID
1878 in: path
1879 name: id
1880 required: true
1881 type: string
1882 - description: Permission grant
1883 in: body
1884 name: request
1885 required: true
1886 schema:
1887 $ref: '#/definitions/proto.PermissionGrant'
1888 responses:
1889 "200":
1890 description: OK
1891 "400":
1892 description: Bad Request
1893 schema:
1894 $ref: '#/definitions/proto.Error'
1895 "404":
1896 description: Not Found
1897 schema:
1898 $ref: '#/definitions/proto.Error'
1899 "500":
1900 description: Internal Server Error
1901 schema:
1902 $ref: '#/definitions/proto.Error'
1903 summary: Grant permission
1904 tags:
1905 - permissions
1906 /workspaces/{id}/permissions/skip:
1907 get:
1908 parameters:
1909 - description: Workspace ID
1910 in: path
1911 name: id
1912 required: true
1913 type: string
1914 produces:
1915 - application/json
1916 responses:
1917 "200":
1918 description: OK
1919 schema:
1920 $ref: '#/definitions/proto.PermissionSkipRequest'
1921 "404":
1922 description: Not Found
1923 schema:
1924 $ref: '#/definitions/proto.Error'
1925 "500":
1926 description: Internal Server Error
1927 schema:
1928 $ref: '#/definitions/proto.Error'
1929 summary: Get skip permissions status
1930 tags:
1931 - permissions
1932 post:
1933 consumes:
1934 - application/json
1935 parameters:
1936 - description: Workspace ID
1937 in: path
1938 name: id
1939 required: true
1940 type: string
1941 - description: Permission skip request
1942 in: body
1943 name: request
1944 required: true
1945 schema:
1946 $ref: '#/definitions/proto.PermissionSkipRequest'
1947 responses:
1948 "200":
1949 description: OK
1950 "400":
1951 description: Bad Request
1952 schema:
1953 $ref: '#/definitions/proto.Error'
1954 "404":
1955 description: Not Found
1956 schema:
1957 $ref: '#/definitions/proto.Error'
1958 "500":
1959 description: Internal Server Error
1960 schema:
1961 $ref: '#/definitions/proto.Error'
1962 summary: Set skip permissions
1963 tags:
1964 - permissions
1965 /workspaces/{id}/project/init:
1966 post:
1967 parameters:
1968 - description: Workspace ID
1969 in: path
1970 name: id
1971 required: true
1972 type: string
1973 responses:
1974 "200":
1975 description: OK
1976 "404":
1977 description: Not Found
1978 schema:
1979 $ref: '#/definitions/proto.Error'
1980 "500":
1981 description: Internal Server Error
1982 schema:
1983 $ref: '#/definitions/proto.Error'
1984 summary: Mark project as initialized
1985 tags:
1986 - project
1987 /workspaces/{id}/project/init-prompt:
1988 get:
1989 parameters:
1990 - description: Workspace ID
1991 in: path
1992 name: id
1993 required: true
1994 type: string
1995 produces:
1996 - application/json
1997 responses:
1998 "200":
1999 description: OK
2000 schema:
2001 $ref: '#/definitions/proto.ProjectInitPromptResponse'
2002 "404":
2003 description: Not Found
2004 schema:
2005 $ref: '#/definitions/proto.Error'
2006 "500":
2007 description: Internal Server Error
2008 schema:
2009 $ref: '#/definitions/proto.Error'
2010 summary: Get project initialization prompt
2011 tags:
2012 - project
2013 /workspaces/{id}/project/needs-init:
2014 get:
2015 parameters:
2016 - description: Workspace ID
2017 in: path
2018 name: id
2019 required: true
2020 type: string
2021 produces:
2022 - application/json
2023 responses:
2024 "200":
2025 description: OK
2026 schema:
2027 $ref: '#/definitions/proto.ProjectNeedsInitResponse'
2028 "404":
2029 description: Not Found
2030 schema:
2031 $ref: '#/definitions/proto.Error'
2032 "500":
2033 description: Internal Server Error
2034 schema:
2035 $ref: '#/definitions/proto.Error'
2036 summary: Check if project needs initialization
2037 tags:
2038 - project
2039 /workspaces/{id}/providers:
2040 get:
2041 parameters:
2042 - description: Workspace ID
2043 in: path
2044 name: id
2045 required: true
2046 type: string
2047 produces:
2048 - application/json
2049 responses:
2050 "200":
2051 description: OK
2052 schema:
2053 type: object
2054 "404":
2055 description: Not Found
2056 schema:
2057 $ref: '#/definitions/proto.Error'
2058 "500":
2059 description: Internal Server Error
2060 schema:
2061 $ref: '#/definitions/proto.Error'
2062 summary: Get workspace providers
2063 tags:
2064 - workspaces
2065 /workspaces/{id}/sessions:
2066 get:
2067 parameters:
2068 - description: Workspace ID
2069 in: path
2070 name: id
2071 required: true
2072 type: string
2073 produces:
2074 - application/json
2075 responses:
2076 "200":
2077 description: OK
2078 schema:
2079 items:
2080 $ref: '#/definitions/proto.Session'
2081 type: array
2082 "404":
2083 description: Not Found
2084 schema:
2085 $ref: '#/definitions/proto.Error'
2086 "500":
2087 description: Internal Server Error
2088 schema:
2089 $ref: '#/definitions/proto.Error'
2090 summary: List sessions
2091 tags:
2092 - sessions
2093 post:
2094 consumes:
2095 - application/json
2096 parameters:
2097 - description: Workspace ID
2098 in: path
2099 name: id
2100 required: true
2101 type: string
2102 - description: Session creation params (title)
2103 in: body
2104 name: request
2105 required: true
2106 schema:
2107 $ref: '#/definitions/proto.Session'
2108 produces:
2109 - application/json
2110 responses:
2111 "200":
2112 description: OK
2113 schema:
2114 $ref: '#/definitions/proto.Session'
2115 "400":
2116 description: Bad Request
2117 schema:
2118 $ref: '#/definitions/proto.Error'
2119 "404":
2120 description: Not Found
2121 schema:
2122 $ref: '#/definitions/proto.Error'
2123 "500":
2124 description: Internal Server Error
2125 schema:
2126 $ref: '#/definitions/proto.Error'
2127 summary: Create session
2128 tags:
2129 - sessions
2130 /workspaces/{id}/sessions/{sid}:
2131 delete:
2132 parameters:
2133 - description: Workspace ID
2134 in: path
2135 name: id
2136 required: true
2137 type: string
2138 - description: Session ID
2139 in: path
2140 name: sid
2141 required: true
2142 type: string
2143 responses:
2144 "200":
2145 description: OK
2146 "404":
2147 description: Not Found
2148 schema:
2149 $ref: '#/definitions/proto.Error'
2150 "500":
2151 description: Internal Server Error
2152 schema:
2153 $ref: '#/definitions/proto.Error'
2154 summary: Delete session
2155 tags:
2156 - sessions
2157 get:
2158 parameters:
2159 - description: Workspace ID
2160 in: path
2161 name: id
2162 required: true
2163 type: string
2164 - description: Session ID
2165 in: path
2166 name: sid
2167 required: true
2168 type: string
2169 produces:
2170 - application/json
2171 responses:
2172 "200":
2173 description: OK
2174 schema:
2175 $ref: '#/definitions/proto.Session'
2176 "404":
2177 description: Not Found
2178 schema:
2179 $ref: '#/definitions/proto.Error'
2180 "500":
2181 description: Internal Server Error
2182 schema:
2183 $ref: '#/definitions/proto.Error'
2184 summary: Get session
2185 tags:
2186 - sessions
2187 put:
2188 consumes:
2189 - application/json
2190 parameters:
2191 - description: Workspace ID
2192 in: path
2193 name: id
2194 required: true
2195 type: string
2196 - description: Session ID
2197 in: path
2198 name: sid
2199 required: true
2200 type: string
2201 - description: Updated session
2202 in: body
2203 name: request
2204 required: true
2205 schema:
2206 $ref: '#/definitions/proto.Session'
2207 produces:
2208 - application/json
2209 responses:
2210 "200":
2211 description: OK
2212 schema:
2213 $ref: '#/definitions/proto.Session'
2214 "400":
2215 description: Bad Request
2216 schema:
2217 $ref: '#/definitions/proto.Error'
2218 "404":
2219 description: Not Found
2220 schema:
2221 $ref: '#/definitions/proto.Error'
2222 "500":
2223 description: Internal Server Error
2224 schema:
2225 $ref: '#/definitions/proto.Error'
2226 summary: Update session
2227 tags:
2228 - sessions
2229 /workspaces/{id}/sessions/{sid}/filetracker/files:
2230 get:
2231 parameters:
2232 - description: Workspace ID
2233 in: path
2234 name: id
2235 required: true
2236 type: string
2237 - description: Session ID
2238 in: path
2239 name: sid
2240 required: true
2241 type: string
2242 produces:
2243 - application/json
2244 responses:
2245 "200":
2246 description: OK
2247 schema:
2248 items:
2249 type: string
2250 type: array
2251 "404":
2252 description: Not Found
2253 schema:
2254 $ref: '#/definitions/proto.Error'
2255 "500":
2256 description: Internal Server Error
2257 schema:
2258 $ref: '#/definitions/proto.Error'
2259 summary: List tracked files for session
2260 tags:
2261 - filetracker
2262 /workspaces/{id}/sessions/{sid}/history:
2263 get:
2264 parameters:
2265 - description: Workspace ID
2266 in: path
2267 name: id
2268 required: true
2269 type: string
2270 - description: Session ID
2271 in: path
2272 name: sid
2273 required: true
2274 type: string
2275 produces:
2276 - application/json
2277 responses:
2278 "200":
2279 description: OK
2280 schema:
2281 items:
2282 $ref: '#/definitions/proto.File'
2283 type: array
2284 "404":
2285 description: Not Found
2286 schema:
2287 $ref: '#/definitions/proto.Error'
2288 "500":
2289 description: Internal Server Error
2290 schema:
2291 $ref: '#/definitions/proto.Error'
2292 summary: Get session history
2293 tags:
2294 - sessions
2295 /workspaces/{id}/sessions/{sid}/messages:
2296 get:
2297 parameters:
2298 - description: Workspace ID
2299 in: path
2300 name: id
2301 required: true
2302 type: string
2303 - description: Session ID
2304 in: path
2305 name: sid
2306 required: true
2307 type: string
2308 produces:
2309 - application/json
2310 responses:
2311 "200":
2312 description: OK
2313 schema:
2314 items:
2315 $ref: '#/definitions/github_com_charmbracelet_crush_internal_proto.Message'
2316 type: array
2317 "404":
2318 description: Not Found
2319 schema:
2320 $ref: '#/definitions/proto.Error'
2321 "500":
2322 description: Internal Server Error
2323 schema:
2324 $ref: '#/definitions/proto.Error'
2325 summary: Get session messages
2326 tags:
2327 - sessions
2328 /workspaces/{id}/sessions/{sid}/messages/user:
2329 get:
2330 parameters:
2331 - description: Workspace ID
2332 in: path
2333 name: id
2334 required: true
2335 type: string
2336 - description: Session ID
2337 in: path
2338 name: sid
2339 required: true
2340 type: string
2341 produces:
2342 - application/json
2343 responses:
2344 "200":
2345 description: OK
2346 schema:
2347 items:
2348 $ref: '#/definitions/github_com_charmbracelet_crush_internal_proto.Message'
2349 type: array
2350 "404":
2351 description: Not Found
2352 schema:
2353 $ref: '#/definitions/proto.Error'
2354 "500":
2355 description: Internal Server Error
2356 schema:
2357 $ref: '#/definitions/proto.Error'
2358 summary: Get user messages for session
2359 tags:
2360 - sessions
2361swagger: "2.0"