Skip to content

Commit 6e577d0

Browse files
feat(api): api update
1 parent 60df30f commit 6e577d0

19 files changed

+133
-483
lines changed

.stats.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 24
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/opencode%2Fopencode-d10809ab68e48a338167e5504d69db2a0a80739adf6ecd3f065644a4139bc374.yml
3-
openapi_spec_hash: 4875565ef8df3446dbab11f450e04c51
4-
config_hash: 0032a76356d31c6b4c218b39fff635bb
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/opencode%2Fopencode-7f559270c87d0cbb6779d0edd57a2efcb4d60932674cea4444c40cd4e7b72569.yml
3+
openapi_spec_hash: 531acdc4f16185743ec56b3e07857cde
4+
config_hash: 6d92d798d44906c9e43c6dee06615360

api.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -140,10 +140,10 @@ Methods:
140140
Types:
141141

142142
```python
143-
from opencode_ai.types import TuiOpenHelpResponse, TuiPromptResponse
143+
from opencode_ai.types import TuiAppendPromptResponse, TuiOpenHelpResponse
144144
```
145145

146146
Methods:
147147

148+
- <code title="post /tui/append-prompt">client.tui.<a href="./src/opencode_ai/resources/tui.py">append_prompt</a>(\*\*<a href="src/opencode_ai/types/tui_append_prompt_params.py">params</a>) -> <a href="./src/opencode_ai/types/tui_append_prompt_response.py">TuiAppendPromptResponse</a></code>
148149
- <code title="post /tui/open-help">client.tui.<a href="./src/opencode_ai/resources/tui.py">open_help</a>() -> <a href="./src/opencode_ai/types/tui_open_help_response.py">TuiOpenHelpResponse</a></code>
149-
- <code title="post /tui/prompt">client.tui.<a href="./src/opencode_ai/resources/tui.py">prompt</a>(\*\*<a href="src/opencode_ai/types/tui_prompt_params.py">params</a>) -> <a href="./src/opencode_ai/types/tui_prompt_response.py">TuiPromptResponse</a></code>

src/opencode_ai/resources/tui.py

Lines changed: 60 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,9 @@
22

33
from __future__ import annotations
44

5-
from typing import Iterable
6-
75
import httpx
86

9-
from ..types import tui_prompt_params
7+
from ..types import tui_append_prompt_params
108
from .._types import NOT_GIVEN, Body, Query, Headers, NotGiven
119
from .._utils import maybe_transform, async_maybe_transform
1210
from .._compat import cached_property
@@ -18,9 +16,8 @@
1816
async_to_streamed_response_wrapper,
1917
)
2018
from .._base_client import make_request_options
21-
from ..types.part_param import PartParam
22-
from ..types.tui_prompt_response import TuiPromptResponse
2319
from ..types.tui_open_help_response import TuiOpenHelpResponse
20+
from ..types.tui_append_prompt_response import TuiAppendPromptResponse
2421

2522
__all__ = ["TuiResource", "AsyncTuiResource"]
2623

@@ -45,62 +42,55 @@ def with_streaming_response(self) -> TuiResourceWithStreamingResponse:
4542
"""
4643
return TuiResourceWithStreamingResponse(self)
4744

48-
def open_help(
45+
def append_prompt(
4946
self,
5047
*,
48+
text: str,
5149
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
5250
# The extra values given here take precedence over values defined on the client or passed to this method.
5351
extra_headers: Headers | None = None,
5452
extra_query: Query | None = None,
5553
extra_body: Body | None = None,
5654
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
57-
) -> TuiOpenHelpResponse:
58-
"""Open the help dialog"""
55+
) -> TuiAppendPromptResponse:
56+
"""
57+
Append prompt to the TUI
58+
59+
Args:
60+
extra_headers: Send extra headers
61+
62+
extra_query: Add additional query parameters to the request
63+
64+
extra_body: Add additional JSON properties to the request
65+
66+
timeout: Override the client-level default timeout for this request, in seconds
67+
"""
5968
return self._post(
60-
"/tui/open-help",
69+
"/tui/append-prompt",
70+
body=maybe_transform({"text": text}, tui_append_prompt_params.TuiAppendPromptParams),
6171
options=make_request_options(
6272
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
6373
),
64-
cast_to=TuiOpenHelpResponse,
74+
cast_to=TuiAppendPromptResponse,
6575
)
6676

67-
def prompt(
77+
def open_help(
6878
self,
6979
*,
70-
parts: Iterable[PartParam],
71-
text: str,
7280
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
7381
# The extra values given here take precedence over values defined on the client or passed to this method.
7482
extra_headers: Headers | None = None,
7583
extra_query: Query | None = None,
7684
extra_body: Body | None = None,
7785
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
78-
) -> TuiPromptResponse:
79-
"""
80-
Send a prompt to the TUI
81-
82-
Args:
83-
extra_headers: Send extra headers
84-
85-
extra_query: Add additional query parameters to the request
86-
87-
extra_body: Add additional JSON properties to the request
88-
89-
timeout: Override the client-level default timeout for this request, in seconds
90-
"""
86+
) -> TuiOpenHelpResponse:
87+
"""Open the help dialog"""
9188
return self._post(
92-
"/tui/prompt",
93-
body=maybe_transform(
94-
{
95-
"parts": parts,
96-
"text": text,
97-
},
98-
tui_prompt_params.TuiPromptParams,
99-
),
89+
"/tui/open-help",
10090
options=make_request_options(
10191
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
10292
),
103-
cast_to=TuiPromptResponse,
93+
cast_to=TuiOpenHelpResponse,
10494
)
10595

10696

@@ -124,108 +114,101 @@ def with_streaming_response(self) -> AsyncTuiResourceWithStreamingResponse:
124114
"""
125115
return AsyncTuiResourceWithStreamingResponse(self)
126116

127-
async def open_help(
117+
async def append_prompt(
128118
self,
129119
*,
120+
text: str,
130121
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
131122
# The extra values given here take precedence over values defined on the client or passed to this method.
132123
extra_headers: Headers | None = None,
133124
extra_query: Query | None = None,
134125
extra_body: Body | None = None,
135126
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
136-
) -> TuiOpenHelpResponse:
137-
"""Open the help dialog"""
127+
) -> TuiAppendPromptResponse:
128+
"""
129+
Append prompt to the TUI
130+
131+
Args:
132+
extra_headers: Send extra headers
133+
134+
extra_query: Add additional query parameters to the request
135+
136+
extra_body: Add additional JSON properties to the request
137+
138+
timeout: Override the client-level default timeout for this request, in seconds
139+
"""
138140
return await self._post(
139-
"/tui/open-help",
141+
"/tui/append-prompt",
142+
body=await async_maybe_transform({"text": text}, tui_append_prompt_params.TuiAppendPromptParams),
140143
options=make_request_options(
141144
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
142145
),
143-
cast_to=TuiOpenHelpResponse,
146+
cast_to=TuiAppendPromptResponse,
144147
)
145148

146-
async def prompt(
149+
async def open_help(
147150
self,
148151
*,
149-
parts: Iterable[PartParam],
150-
text: str,
151152
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
152153
# The extra values given here take precedence over values defined on the client or passed to this method.
153154
extra_headers: Headers | None = None,
154155
extra_query: Query | None = None,
155156
extra_body: Body | None = None,
156157
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
157-
) -> TuiPromptResponse:
158-
"""
159-
Send a prompt to the TUI
160-
161-
Args:
162-
extra_headers: Send extra headers
163-
164-
extra_query: Add additional query parameters to the request
165-
166-
extra_body: Add additional JSON properties to the request
167-
168-
timeout: Override the client-level default timeout for this request, in seconds
169-
"""
158+
) -> TuiOpenHelpResponse:
159+
"""Open the help dialog"""
170160
return await self._post(
171-
"/tui/prompt",
172-
body=await async_maybe_transform(
173-
{
174-
"parts": parts,
175-
"text": text,
176-
},
177-
tui_prompt_params.TuiPromptParams,
178-
),
161+
"/tui/open-help",
179162
options=make_request_options(
180163
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
181164
),
182-
cast_to=TuiPromptResponse,
165+
cast_to=TuiOpenHelpResponse,
183166
)
184167

185168

186169
class TuiResourceWithRawResponse:
187170
def __init__(self, tui: TuiResource) -> None:
188171
self._tui = tui
189172

173+
self.append_prompt = to_raw_response_wrapper(
174+
tui.append_prompt,
175+
)
190176
self.open_help = to_raw_response_wrapper(
191177
tui.open_help,
192178
)
193-
self.prompt = to_raw_response_wrapper(
194-
tui.prompt,
195-
)
196179

197180

198181
class AsyncTuiResourceWithRawResponse:
199182
def __init__(self, tui: AsyncTuiResource) -> None:
200183
self._tui = tui
201184

185+
self.append_prompt = async_to_raw_response_wrapper(
186+
tui.append_prompt,
187+
)
202188
self.open_help = async_to_raw_response_wrapper(
203189
tui.open_help,
204190
)
205-
self.prompt = async_to_raw_response_wrapper(
206-
tui.prompt,
207-
)
208191

209192

210193
class TuiResourceWithStreamingResponse:
211194
def __init__(self, tui: TuiResource) -> None:
212195
self._tui = tui
213196

197+
self.append_prompt = to_streamed_response_wrapper(
198+
tui.append_prompt,
199+
)
214200
self.open_help = to_streamed_response_wrapper(
215201
tui.open_help,
216202
)
217-
self.prompt = to_streamed_response_wrapper(
218-
tui.prompt,
219-
)
220203

221204

222205
class AsyncTuiResourceWithStreamingResponse:
223206
def __init__(self, tui: AsyncTuiResource) -> None:
224207
self._tui = tui
225208

209+
self.append_prompt = async_to_streamed_response_wrapper(
210+
tui.append_prompt,
211+
)
226212
self.open_help = async_to_streamed_response_wrapper(
227213
tui.open_help,
228214
)
229-
self.prompt = async_to_streamed_response_wrapper(
230-
tui.prompt,
231-
)

src/opencode_ai/types/__init__.py

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -21,18 +21,14 @@
2121
from .file_part import FilePart as FilePart
2222
from .text_part import TextPart as TextPart
2323
from .tool_part import ToolPart as ToolPart
24-
from .part_param import PartParam as PartParam
2524
from .file_source import FileSource as FileSource
2625
from .mode_config import ModeConfig as ModeConfig
2726
from .user_message import UserMessage as UserMessage
2827
from .snapshot_part import SnapshotPart as SnapshotPart
2928
from .symbol_source import SymbolSource as SymbolSource
3029
from .app_log_params import AppLogParams as AppLogParams
31-
from .file_part_param import FilePartParam as FilePartParam
3230
from .keybinds_config import KeybindsConfig as KeybindsConfig
3331
from .step_start_part import StepStartPart as StepStartPart
34-
from .text_part_param import TextPartParam as TextPartParam
35-
from .tool_part_param import ToolPartParam as ToolPartParam
3632
from .app_log_response import AppLogResponse as AppLogResponse
3733
from .file_part_source import FilePartSource as FilePartSource
3834
from .file_read_params import FileReadParams as FileReadParams
@@ -45,7 +41,6 @@
4541
from .file_source_param import FileSourceParam as FileSourceParam
4642
from .find_files_params import FindFilesParams as FindFilesParams
4743
from .mcp_remote_config import McpRemoteConfig as McpRemoteConfig
48-
from .tui_prompt_params import TuiPromptParams as TuiPromptParams
4944
from .app_modes_response import AppModesResponse as AppModesResponse
5045
from .file_read_response import FileReadResponse as FileReadResponse
5146
from .find_text_response import FindTextResponse as FindTextResponse
@@ -56,29 +51,23 @@
5651
from .find_symbols_params import FindSymbolsParams as FindSymbolsParams
5752
from .session_chat_params import SessionChatParams as SessionChatParams
5853
from .session_init_params import SessionInitParams as SessionInitParams
59-
from .snapshot_part_param import SnapshotPartParam as SnapshotPartParam
6054
from .symbol_source_param import SymbolSourceParam as SymbolSourceParam
61-
from .tui_prompt_response import TuiPromptResponse as TuiPromptResponse
6255
from .file_status_response import FileStatusResponse as FileStatusResponse
6356
from .tool_state_completed import ToolStateCompleted as ToolStateCompleted
6457
from .file_part_input_param import FilePartInputParam as FilePartInputParam
6558
from .file_part_source_text import FilePartSourceText as FilePartSourceText
6659
from .find_symbols_response import FindSymbolsResponse as FindSymbolsResponse
6760
from .session_init_response import SessionInitResponse as SessionInitResponse
6861
from .session_list_response import SessionListResponse as SessionListResponse
69-
from .step_start_part_param import StepStartPartParam as StepStartPartParam
7062
from .text_part_input_param import TextPartInputParam as TextPartInputParam
7163
from .app_providers_response import AppProvidersResponse as AppProvidersResponse
7264
from .file_part_source_param import FilePartSourceParam as FilePartSourceParam
7365
from .session_abort_response import SessionAbortResponse as SessionAbortResponse
74-
from .step_finish_part_param import StepFinishPartParam as StepFinishPartParam
75-
from .tool_state_error_param import ToolStateErrorParam as ToolStateErrorParam
7666
from .tui_open_help_response import TuiOpenHelpResponse as TuiOpenHelpResponse
7767
from .session_delete_response import SessionDeleteResponse as SessionDeleteResponse
7868
from .session_summarize_params import SessionSummarizeParams as SessionSummarizeParams
79-
from .tool_state_pending_param import ToolStatePendingParam as ToolStatePendingParam
80-
from .tool_state_running_param import ToolStateRunningParam as ToolStateRunningParam
69+
from .tui_append_prompt_params import TuiAppendPromptParams as TuiAppendPromptParams
8170
from .session_messages_response import SessionMessagesResponse as SessionMessagesResponse
8271
from .session_summarize_response import SessionSummarizeResponse as SessionSummarizeResponse
83-
from .tool_state_completed_param import ToolStateCompletedParam as ToolStateCompletedParam
72+
from .tui_append_prompt_response import TuiAppendPromptResponse as TuiAppendPromptResponse
8473
from .file_part_source_text_param import FilePartSourceTextParam as FilePartSourceTextParam

src/opencode_ai/types/event_list_response.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@
4545
"EventSessionErrorPropertiesErrorMessageOutputLengthError",
4646
"EventFileWatcherUpdated",
4747
"EventFileWatcherUpdatedProperties",
48+
"EventIdeInstalled",
49+
"EventIdeInstalledProperties",
4850
]
4951

5052

@@ -214,6 +216,16 @@ class EventFileWatcherUpdated(BaseModel):
214216
type: Literal["file.watcher.updated"]
215217

216218

219+
class EventIdeInstalledProperties(BaseModel):
220+
ide: str
221+
222+
223+
class EventIdeInstalled(BaseModel):
224+
properties: EventIdeInstalledProperties
225+
226+
type: Literal["ide.installed"]
227+
228+
217229
EventListResponse: TypeAlias = Annotated[
218230
Union[
219231
EventLspClientDiagnostics,
@@ -229,6 +241,7 @@ class EventFileWatcherUpdated(BaseModel):
229241
EventSessionIdle,
230242
EventSessionError,
231243
EventFileWatcherUpdated,
244+
EventIdeInstalled,
232245
],
233246
PropertyInfo(discriminator="type"),
234247
]

src/opencode_ai/types/file_part_param.py

Lines changed: 0 additions & 28 deletions
This file was deleted.

0 commit comments

Comments
 (0)