fix: blank version issue

This commit is contained in:
Aiden Cline
2025-10-28 10:03:53 -05:00
parent dfebf40471
commit ee1af0fe80
11 changed files with 776 additions and 74 deletions

View File

@@ -1,3 +1,3 @@
{
".": "0.16.2"
".": "0.18.0"
}

View File

@@ -1,4 +1,4 @@
configured_endpoints: 43
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/opencode%2Fopencode-273fc9fea965af661dfed0902d00f10d6ed844f0681ca861a58821c4902eac2f.yml
openapi_spec_hash: c6144f23a1bac75f79be86edd405552b
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/opencode%2Fopencode-92f9d0f8daee2ea7458f8b9f1d7a7f941ff932442ad944bc7576254d5978b6d5.yml
openapi_spec_hash: 5b785c4ff6fb69039915f0e746abdaf9
config_hash: 026ef000d34bf2f930e7b41e77d2d3ff

View File

@@ -1,5 +1,21 @@
# Changelog
## 0.18.0 (2025-10-10)
Full Changelog: [v0.17.0...v0.18.0](https://github.com/sst/opencode-sdk-go/compare/v0.17.0...v0.18.0)
### Features
* **api:** api update ([0a7f5e7](https://github.com/sst/opencode-sdk-go/commit/0a7f5e710911506512a132ba39e0593c412beb77))
## 0.17.0 (2025-10-07)
Full Changelog: [v0.16.2...v0.17.0](https://github.com/sst/opencode-sdk-go/compare/v0.16.2...v0.17.0)
### Features
* **api:** api update ([84a3df5](https://github.com/sst/opencode-sdk-go/commit/84a3df50a7ff3d87e5593e4f29dfb5d561f71cc3))
## 0.16.2 (2025-09-26)
Full Changelog: [v0.16.1...v0.16.2](https://github.com/sst/opencode-sdk-go/compare/v0.16.1...v0.16.2)

View File

@@ -24,7 +24,7 @@ Or to pin the version:
<!-- x-release-please-start-version -->
```sh
go get -u 'github.com/sst/opencode-sdk-go@v0.16.2'
go get -u 'github.com/sst/opencode-sdk-go@v0.18.0'
```
<!-- x-release-please-end -->

View File

@@ -62,7 +62,9 @@ type Model struct {
Temperature bool `json:"temperature,required"`
ToolCall bool `json:"tool_call,required"`
Experimental bool `json:"experimental"`
Modalities ModelModalities `json:"modalities"`
Provider ModelProvider `json:"provider"`
Status ModelStatus `json:"status"`
JSON modelJSON `json:"-"`
}
@@ -79,7 +81,9 @@ type modelJSON struct {
Temperature apijson.Field
ToolCall apijson.Field
Experimental apijson.Field
Modalities apijson.Field
Provider apijson.Field
Status apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
@@ -140,6 +144,64 @@ func (r modelLimitJSON) RawJSON() string {
return r.raw
}
type ModelModalities struct {
Input []ModelModalitiesInput `json:"input,required"`
Output []ModelModalitiesOutput `json:"output,required"`
JSON modelModalitiesJSON `json:"-"`
}
// modelModalitiesJSON contains the JSON metadata for the struct [ModelModalities]
type modelModalitiesJSON struct {
Input apijson.Field
Output apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *ModelModalities) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r modelModalitiesJSON) RawJSON() string {
return r.raw
}
type ModelModalitiesInput string
const (
ModelModalitiesInputText ModelModalitiesInput = "text"
ModelModalitiesInputAudio ModelModalitiesInput = "audio"
ModelModalitiesInputImage ModelModalitiesInput = "image"
ModelModalitiesInputVideo ModelModalitiesInput = "video"
ModelModalitiesInputPdf ModelModalitiesInput = "pdf"
)
func (r ModelModalitiesInput) IsKnown() bool {
switch r {
case ModelModalitiesInputText, ModelModalitiesInputAudio, ModelModalitiesInputImage, ModelModalitiesInputVideo, ModelModalitiesInputPdf:
return true
}
return false
}
type ModelModalitiesOutput string
const (
ModelModalitiesOutputText ModelModalitiesOutput = "text"
ModelModalitiesOutputAudio ModelModalitiesOutput = "audio"
ModelModalitiesOutputImage ModelModalitiesOutput = "image"
ModelModalitiesOutputVideo ModelModalitiesOutput = "video"
ModelModalitiesOutputPdf ModelModalitiesOutput = "pdf"
)
func (r ModelModalitiesOutput) IsKnown() bool {
switch r {
case ModelModalitiesOutputText, ModelModalitiesOutputAudio, ModelModalitiesOutputImage, ModelModalitiesOutputVideo, ModelModalitiesOutputPdf:
return true
}
return false
}
type ModelProvider struct {
Npm string `json:"npm,required"`
JSON modelProviderJSON `json:"-"`
@@ -160,6 +222,21 @@ func (r modelProviderJSON) RawJSON() string {
return r.raw
}
type ModelStatus string
const (
ModelStatusAlpha ModelStatus = "alpha"
ModelStatusBeta ModelStatus = "beta"
)
func (r ModelStatus) IsKnown() bool {
switch r {
case ModelStatusAlpha, ModelStatusBeta:
return true
}
return false
}
type Provider struct {
ID string `json:"id,required"`
Env []string `json:"env,required"`

View File

@@ -1567,19 +1567,21 @@ func (r configProviderJSON) RawJSON() string {
}
type ConfigProviderModel struct {
ID string `json:"id"`
Attachment bool `json:"attachment"`
Cost ConfigProviderModelsCost `json:"cost"`
Experimental bool `json:"experimental"`
Limit ConfigProviderModelsLimit `json:"limit"`
Name string `json:"name"`
Options map[string]interface{} `json:"options"`
Provider ConfigProviderModelsProvider `json:"provider"`
Reasoning bool `json:"reasoning"`
ReleaseDate string `json:"release_date"`
Temperature bool `json:"temperature"`
ToolCall bool `json:"tool_call"`
JSON configProviderModelJSON `json:"-"`
ID string `json:"id"`
Attachment bool `json:"attachment"`
Cost ConfigProviderModelsCost `json:"cost"`
Experimental bool `json:"experimental"`
Limit ConfigProviderModelsLimit `json:"limit"`
Modalities ConfigProviderModelsModalities `json:"modalities"`
Name string `json:"name"`
Options map[string]interface{} `json:"options"`
Provider ConfigProviderModelsProvider `json:"provider"`
Reasoning bool `json:"reasoning"`
ReleaseDate string `json:"release_date"`
Status ConfigProviderModelsStatus `json:"status"`
Temperature bool `json:"temperature"`
ToolCall bool `json:"tool_call"`
JSON configProviderModelJSON `json:"-"`
}
// configProviderModelJSON contains the JSON metadata for the struct
@@ -1590,11 +1592,13 @@ type configProviderModelJSON struct {
Cost apijson.Field
Experimental apijson.Field
Limit apijson.Field
Modalities apijson.Field
Name apijson.Field
Options apijson.Field
Provider apijson.Field
Reasoning apijson.Field
ReleaseDate apijson.Field
Status apijson.Field
Temperature apijson.Field
ToolCall apijson.Field
raw string
@@ -1659,6 +1663,65 @@ func (r configProviderModelsLimitJSON) RawJSON() string {
return r.raw
}
type ConfigProviderModelsModalities struct {
Input []ConfigProviderModelsModalitiesInput `json:"input,required"`
Output []ConfigProviderModelsModalitiesOutput `json:"output,required"`
JSON configProviderModelsModalitiesJSON `json:"-"`
}
// configProviderModelsModalitiesJSON contains the JSON metadata for the struct
// [ConfigProviderModelsModalities]
type configProviderModelsModalitiesJSON struct {
Input apijson.Field
Output apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *ConfigProviderModelsModalities) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r configProviderModelsModalitiesJSON) RawJSON() string {
return r.raw
}
type ConfigProviderModelsModalitiesInput string
const (
ConfigProviderModelsModalitiesInputText ConfigProviderModelsModalitiesInput = "text"
ConfigProviderModelsModalitiesInputAudio ConfigProviderModelsModalitiesInput = "audio"
ConfigProviderModelsModalitiesInputImage ConfigProviderModelsModalitiesInput = "image"
ConfigProviderModelsModalitiesInputVideo ConfigProviderModelsModalitiesInput = "video"
ConfigProviderModelsModalitiesInputPdf ConfigProviderModelsModalitiesInput = "pdf"
)
func (r ConfigProviderModelsModalitiesInput) IsKnown() bool {
switch r {
case ConfigProviderModelsModalitiesInputText, ConfigProviderModelsModalitiesInputAudio, ConfigProviderModelsModalitiesInputImage, ConfigProviderModelsModalitiesInputVideo, ConfigProviderModelsModalitiesInputPdf:
return true
}
return false
}
type ConfigProviderModelsModalitiesOutput string
const (
ConfigProviderModelsModalitiesOutputText ConfigProviderModelsModalitiesOutput = "text"
ConfigProviderModelsModalitiesOutputAudio ConfigProviderModelsModalitiesOutput = "audio"
ConfigProviderModelsModalitiesOutputImage ConfigProviderModelsModalitiesOutput = "image"
ConfigProviderModelsModalitiesOutputVideo ConfigProviderModelsModalitiesOutput = "video"
ConfigProviderModelsModalitiesOutputPdf ConfigProviderModelsModalitiesOutput = "pdf"
)
func (r ConfigProviderModelsModalitiesOutput) IsKnown() bool {
switch r {
case ConfigProviderModelsModalitiesOutputText, ConfigProviderModelsModalitiesOutputAudio, ConfigProviderModelsModalitiesOutputImage, ConfigProviderModelsModalitiesOutputVideo, ConfigProviderModelsModalitiesOutputPdf:
return true
}
return false
}
type ConfigProviderModelsProvider struct {
Npm string `json:"npm,required"`
JSON configProviderModelsProviderJSON `json:"-"`
@@ -1680,6 +1743,21 @@ func (r configProviderModelsProviderJSON) RawJSON() string {
return r.raw
}
type ConfigProviderModelsStatus string
const (
ConfigProviderModelsStatusAlpha ConfigProviderModelsStatus = "alpha"
ConfigProviderModelsStatusBeta ConfigProviderModelsStatus = "beta"
)
func (r ConfigProviderModelsStatus) IsKnown() bool {
switch r {
case ConfigProviderModelsStatusAlpha, ConfigProviderModelsStatusBeta:
return true
}
return false
}
type ConfigProviderOptions struct {
APIKey string `json:"apiKey"`
BaseURL string `json:"baseURL"`

View File

@@ -65,6 +65,7 @@ type EventListResponse struct {
// [EventListResponseEventFileWatcherUpdatedProperties],
// [EventListResponseEventTodoUpdatedProperties],
// [EventListResponseEventSessionIdleProperties],
// [EventListResponseEventSessionCreatedProperties],
// [EventListResponseEventSessionUpdatedProperties],
// [EventListResponseEventSessionDeletedProperties],
// [EventListResponseEventSessionErrorProperties], [interface{}],
@@ -110,9 +111,10 @@ func (r *EventListResponse) UnmarshalJSON(data []byte) (err error) {
// [EventListResponseEventPermissionUpdated],
// [EventListResponseEventPermissionReplied], [EventListResponseEventFileEdited],
// [EventListResponseEventFileWatcherUpdated], [EventListResponseEventTodoUpdated],
// [EventListResponseEventSessionIdle], [EventListResponseEventSessionUpdated],
// [EventListResponseEventSessionDeleted], [EventListResponseEventSessionError],
// [EventListResponseEventServerConnected], [EventListResponseEventIdeInstalled].
// [EventListResponseEventSessionIdle], [EventListResponseEventSessionCreated],
// [EventListResponseEventSessionUpdated], [EventListResponseEventSessionDeleted],
// [EventListResponseEventSessionError], [EventListResponseEventServerConnected],
// [EventListResponseEventIdeInstalled].
func (r EventListResponse) AsUnion() EventListResponseUnion {
return r.union
}
@@ -126,9 +128,10 @@ func (r EventListResponse) AsUnion() EventListResponseUnion {
// [EventListResponseEventPermissionUpdated],
// [EventListResponseEventPermissionReplied], [EventListResponseEventFileEdited],
// [EventListResponseEventFileWatcherUpdated], [EventListResponseEventTodoUpdated],
// [EventListResponseEventSessionIdle], [EventListResponseEventSessionUpdated],
// [EventListResponseEventSessionDeleted], [EventListResponseEventSessionError],
// [EventListResponseEventServerConnected] or [EventListResponseEventIdeInstalled].
// [EventListResponseEventSessionIdle], [EventListResponseEventSessionCreated],
// [EventListResponseEventSessionUpdated], [EventListResponseEventSessionDeleted],
// [EventListResponseEventSessionError], [EventListResponseEventServerConnected] or
// [EventListResponseEventIdeInstalled].
type EventListResponseUnion interface {
implementsEventListResponse()
}
@@ -189,6 +192,10 @@ func init() {
TypeFilter: gjson.JSON,
Type: reflect.TypeOf(EventListResponseEventSessionIdle{}),
},
apijson.UnionVariant{
TypeFilter: gjson.JSON,
Type: reflect.TypeOf(EventListResponseEventSessionCreated{}),
},
apijson.UnionVariant{
TypeFilter: gjson.JSON,
Type: reflect.TypeOf(EventListResponseEventSessionUpdated{}),
@@ -482,14 +489,16 @@ func (r eventListResponseEventMessagePartUpdatedJSON) RawJSON() string {
func (r EventListResponseEventMessagePartUpdated) implementsEventListResponse() {}
type EventListResponseEventMessagePartUpdatedProperties struct {
Part Part `json:"part,required"`
JSON eventListResponseEventMessagePartUpdatedPropertiesJSON `json:"-"`
Part Part `json:"part,required"`
Delta string `json:"delta"`
JSON eventListResponseEventMessagePartUpdatedPropertiesJSON `json:"-"`
}
// eventListResponseEventMessagePartUpdatedPropertiesJSON contains the JSON
// metadata for the struct [EventListResponseEventMessagePartUpdatedProperties]
type eventListResponseEventMessagePartUpdatedPropertiesJSON struct {
Part apijson.Field
Delta apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
@@ -1034,6 +1043,66 @@ func (r EventListResponseEventSessionIdleType) IsKnown() bool {
return false
}
type EventListResponseEventSessionCreated struct {
Properties EventListResponseEventSessionCreatedProperties `json:"properties,required"`
Type EventListResponseEventSessionCreatedType `json:"type,required"`
JSON eventListResponseEventSessionCreatedJSON `json:"-"`
}
// eventListResponseEventSessionCreatedJSON contains the JSON metadata for the
// struct [EventListResponseEventSessionCreated]
type eventListResponseEventSessionCreatedJSON struct {
Properties apijson.Field
Type apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *EventListResponseEventSessionCreated) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r eventListResponseEventSessionCreatedJSON) RawJSON() string {
return r.raw
}
func (r EventListResponseEventSessionCreated) implementsEventListResponse() {}
type EventListResponseEventSessionCreatedProperties struct {
Info Session `json:"info,required"`
JSON eventListResponseEventSessionCreatedPropertiesJSON `json:"-"`
}
// eventListResponseEventSessionCreatedPropertiesJSON contains the JSON metadata
// for the struct [EventListResponseEventSessionCreatedProperties]
type eventListResponseEventSessionCreatedPropertiesJSON struct {
Info apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *EventListResponseEventSessionCreatedProperties) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r eventListResponseEventSessionCreatedPropertiesJSON) RawJSON() string {
return r.raw
}
type EventListResponseEventSessionCreatedType string
const (
EventListResponseEventSessionCreatedTypeSessionCreated EventListResponseEventSessionCreatedType = "session.created"
)
func (r EventListResponseEventSessionCreatedType) IsKnown() bool {
switch r {
case EventListResponseEventSessionCreatedTypeSessionCreated:
return true
}
return false
}
type EventListResponseEventSessionUpdated struct {
Properties EventListResponseEventSessionUpdatedProperties `json:"properties,required"`
Type EventListResponseEventSessionUpdatedType `json:"type,required"`
@@ -1204,7 +1273,8 @@ func (r eventListResponseEventSessionErrorPropertiesJSON) RawJSON() string {
type EventListResponseEventSessionErrorPropertiesError struct {
// This field can have the runtime type of [shared.ProviderAuthErrorData],
// [shared.UnknownErrorData], [interface{}], [shared.MessageAbortedErrorData].
// [shared.UnknownErrorData], [interface{}], [shared.MessageAbortedErrorData],
// [EventListResponseEventSessionErrorPropertiesErrorAPIErrorData].
Data interface{} `json:"data,required"`
Name EventListResponseEventSessionErrorPropertiesErrorName `json:"name,required"`
JSON eventListResponseEventSessionErrorPropertiesErrorJSON `json:"-"`
@@ -1239,14 +1309,16 @@ func (r *EventListResponseEventSessionErrorPropertiesError) UnmarshalJSON(data [
// Possible runtime types of the union are [shared.ProviderAuthError],
// [shared.UnknownError],
// [EventListResponseEventSessionErrorPropertiesErrorMessageOutputLengthError],
// [shared.MessageAbortedError].
// [shared.MessageAbortedError],
// [EventListResponseEventSessionErrorPropertiesErrorAPIError].
func (r EventListResponseEventSessionErrorPropertiesError) AsUnion() EventListResponseEventSessionErrorPropertiesErrorUnion {
return r.union
}
// Union satisfied by [shared.ProviderAuthError], [shared.UnknownError],
// [EventListResponseEventSessionErrorPropertiesErrorMessageOutputLengthError] or
// [shared.MessageAbortedError].
// [EventListResponseEventSessionErrorPropertiesErrorMessageOutputLengthError],
// [shared.MessageAbortedError] or
// [EventListResponseEventSessionErrorPropertiesErrorAPIError].
type EventListResponseEventSessionErrorPropertiesErrorUnion interface {
ImplementsEventListResponseEventSessionErrorPropertiesError()
}
@@ -1271,6 +1343,10 @@ func init() {
TypeFilter: gjson.JSON,
Type: reflect.TypeOf(shared.MessageAbortedError{}),
},
apijson.UnionVariant{
TypeFilter: gjson.JSON,
Type: reflect.TypeOf(EventListResponseEventSessionErrorPropertiesErrorAPIError{}),
},
)
}
@@ -1315,6 +1391,77 @@ func (r EventListResponseEventSessionErrorPropertiesErrorMessageOutputLengthErro
return false
}
type EventListResponseEventSessionErrorPropertiesErrorAPIError struct {
Data EventListResponseEventSessionErrorPropertiesErrorAPIErrorData `json:"data,required"`
Name EventListResponseEventSessionErrorPropertiesErrorAPIErrorName `json:"name,required"`
JSON eventListResponseEventSessionErrorPropertiesErrorAPIErrorJSON `json:"-"`
}
// eventListResponseEventSessionErrorPropertiesErrorAPIErrorJSON contains the JSON
// metadata for the struct
// [EventListResponseEventSessionErrorPropertiesErrorAPIError]
type eventListResponseEventSessionErrorPropertiesErrorAPIErrorJSON struct {
Data apijson.Field
Name apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *EventListResponseEventSessionErrorPropertiesErrorAPIError) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r eventListResponseEventSessionErrorPropertiesErrorAPIErrorJSON) RawJSON() string {
return r.raw
}
func (r EventListResponseEventSessionErrorPropertiesErrorAPIError) ImplementsEventListResponseEventSessionErrorPropertiesError() {
}
type EventListResponseEventSessionErrorPropertiesErrorAPIErrorData struct {
IsRetryable bool `json:"isRetryable,required"`
Message string `json:"message,required"`
ResponseBody string `json:"responseBody"`
ResponseHeaders map[string]string `json:"responseHeaders"`
StatusCode float64 `json:"statusCode"`
JSON eventListResponseEventSessionErrorPropertiesErrorAPIErrorDataJSON `json:"-"`
}
// eventListResponseEventSessionErrorPropertiesErrorAPIErrorDataJSON contains the
// JSON metadata for the struct
// [EventListResponseEventSessionErrorPropertiesErrorAPIErrorData]
type eventListResponseEventSessionErrorPropertiesErrorAPIErrorDataJSON struct {
IsRetryable apijson.Field
Message apijson.Field
ResponseBody apijson.Field
ResponseHeaders apijson.Field
StatusCode apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *EventListResponseEventSessionErrorPropertiesErrorAPIErrorData) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r eventListResponseEventSessionErrorPropertiesErrorAPIErrorDataJSON) RawJSON() string {
return r.raw
}
type EventListResponseEventSessionErrorPropertiesErrorAPIErrorName string
const (
EventListResponseEventSessionErrorPropertiesErrorAPIErrorNameAPIError EventListResponseEventSessionErrorPropertiesErrorAPIErrorName = "APIError"
)
func (r EventListResponseEventSessionErrorPropertiesErrorAPIErrorName) IsKnown() bool {
switch r {
case EventListResponseEventSessionErrorPropertiesErrorAPIErrorNameAPIError:
return true
}
return false
}
type EventListResponseEventSessionErrorPropertiesErrorName string
const (
@@ -1322,11 +1469,12 @@ const (
EventListResponseEventSessionErrorPropertiesErrorNameUnknownError EventListResponseEventSessionErrorPropertiesErrorName = "UnknownError"
EventListResponseEventSessionErrorPropertiesErrorNameMessageOutputLengthError EventListResponseEventSessionErrorPropertiesErrorName = "MessageOutputLengthError"
EventListResponseEventSessionErrorPropertiesErrorNameMessageAbortedError EventListResponseEventSessionErrorPropertiesErrorName = "MessageAbortedError"
EventListResponseEventSessionErrorPropertiesErrorNameAPIError EventListResponseEventSessionErrorPropertiesErrorName = "APIError"
)
func (r EventListResponseEventSessionErrorPropertiesErrorName) IsKnown() bool {
switch r {
case EventListResponseEventSessionErrorPropertiesErrorNameProviderAuthError, EventListResponseEventSessionErrorPropertiesErrorNameUnknownError, EventListResponseEventSessionErrorPropertiesErrorNameMessageOutputLengthError, EventListResponseEventSessionErrorPropertiesErrorNameMessageAbortedError:
case EventListResponseEventSessionErrorPropertiesErrorNameProviderAuthError, EventListResponseEventSessionErrorPropertiesErrorNameUnknownError, EventListResponseEventSessionErrorPropertiesErrorNameMessageOutputLengthError, EventListResponseEventSessionErrorPropertiesErrorNameMessageAbortedError, EventListResponseEventSessionErrorPropertiesErrorNameAPIError:
return true
}
return false
@@ -1461,6 +1609,7 @@ const (
EventListResponseTypeFileWatcherUpdated EventListResponseType = "file.watcher.updated"
EventListResponseTypeTodoUpdated EventListResponseType = "todo.updated"
EventListResponseTypeSessionIdle EventListResponseType = "session.idle"
EventListResponseTypeSessionCreated EventListResponseType = "session.created"
EventListResponseTypeSessionUpdated EventListResponseType = "session.updated"
EventListResponseTypeSessionDeleted EventListResponseType = "session.deleted"
EventListResponseTypeSessionError EventListResponseType = "session.error"
@@ -1470,7 +1619,7 @@ const (
func (r EventListResponseType) IsKnown() bool {
switch r {
case EventListResponseTypeInstallationUpdated, EventListResponseTypeLspClientDiagnostics, EventListResponseTypeMessageUpdated, EventListResponseTypeMessageRemoved, EventListResponseTypeMessagePartUpdated, EventListResponseTypeMessagePartRemoved, EventListResponseTypeSessionCompacted, EventListResponseTypePermissionUpdated, EventListResponseTypePermissionReplied, EventListResponseTypeFileEdited, EventListResponseTypeFileWatcherUpdated, EventListResponseTypeTodoUpdated, EventListResponseTypeSessionIdle, EventListResponseTypeSessionUpdated, EventListResponseTypeSessionDeleted, EventListResponseTypeSessionError, EventListResponseTypeServerConnected, EventListResponseTypeIdeInstalled:
case EventListResponseTypeInstallationUpdated, EventListResponseTypeLspClientDiagnostics, EventListResponseTypeMessageUpdated, EventListResponseTypeMessageRemoved, EventListResponseTypeMessagePartUpdated, EventListResponseTypeMessagePartRemoved, EventListResponseTypeSessionCompacted, EventListResponseTypePermissionUpdated, EventListResponseTypePermissionReplied, EventListResponseTypeFileEdited, EventListResponseTypeFileWatcherUpdated, EventListResponseTypeTodoUpdated, EventListResponseTypeSessionIdle, EventListResponseTypeSessionCreated, EventListResponseTypeSessionUpdated, EventListResponseTypeSessionDeleted, EventListResponseTypeSessionError, EventListResponseTypeServerConnected, EventListResponseTypeIdeInstalled:
return true
}
return false

View File

@@ -144,17 +144,23 @@ func (r FileNodeType) IsKnown() bool {
}
type FileReadResponse struct {
Content string `json:"content,required"`
Diff string `json:"diff"`
Patch FileReadResponsePatch `json:"patch"`
JSON fileReadResponseJSON `json:"-"`
Content string `json:"content,required"`
Type FileReadResponseType `json:"type,required"`
Diff string `json:"diff"`
Encoding FileReadResponseEncoding `json:"encoding"`
MimeType string `json:"mimeType"`
Patch FileReadResponsePatch `json:"patch"`
JSON fileReadResponseJSON `json:"-"`
}
// fileReadResponseJSON contains the JSON metadata for the struct
// [FileReadResponse]
type fileReadResponseJSON struct {
Content apijson.Field
Type apijson.Field
Diff apijson.Field
Encoding apijson.Field
MimeType apijson.Field
Patch apijson.Field
raw string
ExtraFields map[string]apijson.Field
@@ -168,6 +174,34 @@ func (r fileReadResponseJSON) RawJSON() string {
return r.raw
}
type FileReadResponseType string
const (
FileReadResponseTypeText FileReadResponseType = "text"
)
func (r FileReadResponseType) IsKnown() bool {
switch r {
case FileReadResponseTypeText:
return true
}
return false
}
type FileReadResponseEncoding string
const (
FileReadResponseEncodingBase64 FileReadResponseEncoding = "base64"
)
func (r FileReadResponseEncoding) IsKnown() bool {
switch r {
case FileReadResponseEncodingBase64:
return true
}
return false
}
type FileReadResponsePatch struct {
Hunks []FileReadResponsePatchHunk `json:"hunks,required"`
NewFileName string `json:"newFileName,required"`

View File

@@ -2,4 +2,4 @@
package internal
const PackageVersion = "0.16.2" // x-release-please-version
const PackageVersion = "0.18.0" // x-release-please-version

View File

@@ -365,6 +365,7 @@ type AssistantMessage struct {
Cost float64 `json:"cost,required"`
Mode string `json:"mode,required"`
ModelID string `json:"modelID,required"`
ParentID string `json:"parentID,required"`
Path AssistantMessagePath `json:"path,required"`
ProviderID string `json:"providerID,required"`
Role AssistantMessageRole `json:"role,required"`
@@ -384,6 +385,7 @@ type assistantMessageJSON struct {
Cost apijson.Field
Mode apijson.Field
ModelID apijson.Field
ParentID apijson.Field
Path apijson.Field
ProviderID apijson.Field
Role apijson.Field
@@ -519,7 +521,8 @@ func (r assistantMessageTokensCacheJSON) RawJSON() string {
type AssistantMessageError struct {
// This field can have the runtime type of [shared.ProviderAuthErrorData],
// [shared.UnknownErrorData], [interface{}], [shared.MessageAbortedErrorData].
// [shared.UnknownErrorData], [interface{}], [shared.MessageAbortedErrorData],
// [AssistantMessageErrorAPIErrorData].
Data interface{} `json:"data,required"`
Name AssistantMessageErrorName `json:"name,required"`
JSON assistantMessageErrorJSON `json:"-"`
@@ -553,13 +556,14 @@ func (r *AssistantMessageError) UnmarshalJSON(data []byte) (err error) {
//
// Possible runtime types of the union are [shared.ProviderAuthError],
// [shared.UnknownError], [AssistantMessageErrorMessageOutputLengthError],
// [shared.MessageAbortedError].
// [shared.MessageAbortedError], [AssistantMessageErrorAPIError].
func (r AssistantMessageError) AsUnion() AssistantMessageErrorUnion {
return r.union
}
// Union satisfied by [shared.ProviderAuthError], [shared.UnknownError],
// [AssistantMessageErrorMessageOutputLengthError] or [shared.MessageAbortedError].
// [AssistantMessageErrorMessageOutputLengthError], [shared.MessageAbortedError] or
// [AssistantMessageErrorAPIError].
type AssistantMessageErrorUnion interface {
ImplementsAssistantMessageError()
}
@@ -584,6 +588,10 @@ func init() {
TypeFilter: gjson.JSON,
Type: reflect.TypeOf(shared.MessageAbortedError{}),
},
apijson.UnionVariant{
TypeFilter: gjson.JSON,
Type: reflect.TypeOf(AssistantMessageErrorAPIError{}),
},
)
}
@@ -626,6 +634,74 @@ func (r AssistantMessageErrorMessageOutputLengthErrorName) IsKnown() bool {
return false
}
type AssistantMessageErrorAPIError struct {
Data AssistantMessageErrorAPIErrorData `json:"data,required"`
Name AssistantMessageErrorAPIErrorName `json:"name,required"`
JSON assistantMessageErrorAPIErrorJSON `json:"-"`
}
// assistantMessageErrorAPIErrorJSON contains the JSON metadata for the struct
// [AssistantMessageErrorAPIError]
type assistantMessageErrorAPIErrorJSON struct {
Data apijson.Field
Name apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *AssistantMessageErrorAPIError) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r assistantMessageErrorAPIErrorJSON) RawJSON() string {
return r.raw
}
func (r AssistantMessageErrorAPIError) ImplementsAssistantMessageError() {}
type AssistantMessageErrorAPIErrorData struct {
IsRetryable bool `json:"isRetryable,required"`
Message string `json:"message,required"`
ResponseBody string `json:"responseBody"`
ResponseHeaders map[string]string `json:"responseHeaders"`
StatusCode float64 `json:"statusCode"`
JSON assistantMessageErrorAPIErrorDataJSON `json:"-"`
}
// assistantMessageErrorAPIErrorDataJSON contains the JSON metadata for the struct
// [AssistantMessageErrorAPIErrorData]
type assistantMessageErrorAPIErrorDataJSON struct {
IsRetryable apijson.Field
Message apijson.Field
ResponseBody apijson.Field
ResponseHeaders apijson.Field
StatusCode apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *AssistantMessageErrorAPIErrorData) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r assistantMessageErrorAPIErrorDataJSON) RawJSON() string {
return r.raw
}
type AssistantMessageErrorAPIErrorName string
const (
AssistantMessageErrorAPIErrorNameAPIError AssistantMessageErrorAPIErrorName = "APIError"
)
func (r AssistantMessageErrorAPIErrorName) IsKnown() bool {
switch r {
case AssistantMessageErrorAPIErrorNameAPIError:
return true
}
return false
}
type AssistantMessageErrorName string
const (
@@ -633,11 +709,12 @@ const (
AssistantMessageErrorNameUnknownError AssistantMessageErrorName = "UnknownError"
AssistantMessageErrorNameMessageOutputLengthError AssistantMessageErrorName = "MessageOutputLengthError"
AssistantMessageErrorNameMessageAbortedError AssistantMessageErrorName = "MessageAbortedError"
AssistantMessageErrorNameAPIError AssistantMessageErrorName = "APIError"
)
func (r AssistantMessageErrorName) IsKnown() bool {
switch r {
case AssistantMessageErrorNameProviderAuthError, AssistantMessageErrorNameUnknownError, AssistantMessageErrorNameMessageOutputLengthError, AssistantMessageErrorNameMessageAbortedError:
case AssistantMessageErrorNameProviderAuthError, AssistantMessageErrorNameUnknownError, AssistantMessageErrorNameMessageOutputLengthError, AssistantMessageErrorNameMessageAbortedError, AssistantMessageErrorNameAPIError:
return true
}
return false
@@ -918,13 +995,15 @@ type Message struct {
Time interface{} `json:"time,required"`
Cost float64 `json:"cost"`
// This field can have the runtime type of [AssistantMessageError].
Error interface{} `json:"error"`
Mode string `json:"mode"`
ModelID string `json:"modelID"`
Error interface{} `json:"error"`
Mode string `json:"mode"`
ModelID string `json:"modelID"`
ParentID string `json:"parentID"`
// This field can have the runtime type of [AssistantMessagePath].
Path interface{} `json:"path"`
ProviderID string `json:"providerID"`
Summary bool `json:"summary"`
// This field can have the runtime type of [UserMessageSummary], [bool].
Summary interface{} `json:"summary"`
// This field can have the runtime type of [[]string].
System interface{} `json:"system"`
// This field can have the runtime type of [AssistantMessageTokens].
@@ -943,6 +1022,7 @@ type messageJSON struct {
Error apijson.Field
Mode apijson.Field
ModelID apijson.Field
ParentID apijson.Field
Path apijson.Field
ProviderID apijson.Field
Summary apijson.Field
@@ -1013,9 +1093,12 @@ type Part struct {
MessageID string `json:"messageID,required"`
SessionID string `json:"sessionID,required"`
Type PartType `json:"type,required"`
Attempt float64 `json:"attempt"`
CallID string `json:"callID"`
Cost float64 `json:"cost"`
Filename string `json:"filename"`
// This field can have the runtime type of [PartRetryPartError].
Error interface{} `json:"error"`
Filename string `json:"filename"`
// This field can have the runtime type of [[]string].
Files interface{} `json:"files"`
Hash string `json:"hash"`
@@ -1023,6 +1106,7 @@ type Part struct {
Metadata interface{} `json:"metadata"`
Mime string `json:"mime"`
Name string `json:"name"`
Reason string `json:"reason"`
Snapshot string `json:"snapshot"`
// This field can have the runtime type of [FilePartSource], [AgentPartSource].
Source interface{} `json:"source"`
@@ -1030,7 +1114,8 @@ type Part struct {
State interface{} `json:"state"`
Synthetic bool `json:"synthetic"`
Text string `json:"text"`
// This field can have the runtime type of [TextPartTime], [ReasoningPartTime].
// This field can have the runtime type of [TextPartTime], [ReasoningPartTime],
// [PartRetryPartTime].
Time interface{} `json:"time"`
// This field can have the runtime type of [StepFinishPartTokens].
Tokens interface{} `json:"tokens"`
@@ -1046,14 +1131,17 @@ type partJSON struct {
MessageID apijson.Field
SessionID apijson.Field
Type apijson.Field
Attempt apijson.Field
CallID apijson.Field
Cost apijson.Field
Error apijson.Field
Filename apijson.Field
Files apijson.Field
Hash apijson.Field
Metadata apijson.Field
Mime apijson.Field
Name apijson.Field
Reason apijson.Field
Snapshot apijson.Field
Source apijson.Field
State apijson.Field
@@ -1085,14 +1173,14 @@ func (r *Part) UnmarshalJSON(data []byte) (err error) {
//
// Possible runtime types of the union are [TextPart], [ReasoningPart], [FilePart],
// [ToolPart], [StepStartPart], [StepFinishPart], [SnapshotPart], [PartPatchPart],
// [AgentPart].
// [AgentPart], [PartRetryPart].
func (r Part) AsUnion() PartUnion {
return r.union
}
// Union satisfied by [TextPart], [ReasoningPart], [FilePart], [ToolPart],
// [StepStartPart], [StepFinishPart], [SnapshotPart], [PartPatchPart] or
// [AgentPart].
// [StepStartPart], [StepFinishPart], [SnapshotPart], [PartPatchPart], [AgentPart]
// or [PartRetryPart].
type PartUnion interface {
implementsPart()
}
@@ -1137,6 +1225,10 @@ func init() {
TypeFilter: gjson.JSON,
Type: reflect.TypeOf(AgentPart{}),
},
apijson.UnionVariant{
TypeFilter: gjson.JSON,
Type: reflect.TypeOf(PartRetryPart{}),
},
)
}
@@ -1186,6 +1278,141 @@ func (r PartPatchPartType) IsKnown() bool {
return false
}
type PartRetryPart struct {
ID string `json:"id,required"`
Attempt float64 `json:"attempt,required"`
Error PartRetryPartError `json:"error,required"`
MessageID string `json:"messageID,required"`
SessionID string `json:"sessionID,required"`
Time PartRetryPartTime `json:"time,required"`
Type PartRetryPartType `json:"type,required"`
JSON partRetryPartJSON `json:"-"`
}
// partRetryPartJSON contains the JSON metadata for the struct [PartRetryPart]
type partRetryPartJSON struct {
ID apijson.Field
Attempt apijson.Field
Error apijson.Field
MessageID apijson.Field
SessionID apijson.Field
Time apijson.Field
Type apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *PartRetryPart) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r partRetryPartJSON) RawJSON() string {
return r.raw
}
func (r PartRetryPart) implementsPart() {}
type PartRetryPartError struct {
Data PartRetryPartErrorData `json:"data,required"`
Name PartRetryPartErrorName `json:"name,required"`
JSON partRetryPartErrorJSON `json:"-"`
}
// partRetryPartErrorJSON contains the JSON metadata for the struct
// [PartRetryPartError]
type partRetryPartErrorJSON struct {
Data apijson.Field
Name apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *PartRetryPartError) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r partRetryPartErrorJSON) RawJSON() string {
return r.raw
}
type PartRetryPartErrorData struct {
IsRetryable bool `json:"isRetryable,required"`
Message string `json:"message,required"`
ResponseBody string `json:"responseBody"`
ResponseHeaders map[string]string `json:"responseHeaders"`
StatusCode float64 `json:"statusCode"`
JSON partRetryPartErrorDataJSON `json:"-"`
}
// partRetryPartErrorDataJSON contains the JSON metadata for the struct
// [PartRetryPartErrorData]
type partRetryPartErrorDataJSON struct {
IsRetryable apijson.Field
Message apijson.Field
ResponseBody apijson.Field
ResponseHeaders apijson.Field
StatusCode apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *PartRetryPartErrorData) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r partRetryPartErrorDataJSON) RawJSON() string {
return r.raw
}
type PartRetryPartErrorName string
const (
PartRetryPartErrorNameAPIError PartRetryPartErrorName = "APIError"
)
func (r PartRetryPartErrorName) IsKnown() bool {
switch r {
case PartRetryPartErrorNameAPIError:
return true
}
return false
}
type PartRetryPartTime struct {
Created float64 `json:"created,required"`
JSON partRetryPartTimeJSON `json:"-"`
}
// partRetryPartTimeJSON contains the JSON metadata for the struct
// [PartRetryPartTime]
type partRetryPartTimeJSON struct {
Created apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *PartRetryPartTime) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r partRetryPartTimeJSON) RawJSON() string {
return r.raw
}
type PartRetryPartType string
const (
PartRetryPartTypeRetry PartRetryPartType = "retry"
)
func (r PartRetryPartType) IsKnown() bool {
switch r {
case PartRetryPartTypeRetry:
return true
}
return false
}
type PartType string
const (
@@ -1198,11 +1425,12 @@ const (
PartTypeSnapshot PartType = "snapshot"
PartTypePatch PartType = "patch"
PartTypeAgent PartType = "agent"
PartTypeRetry PartType = "retry"
)
func (r PartType) IsKnown() bool {
switch r {
case PartTypeText, PartTypeReasoning, PartTypeFile, PartTypeTool, PartTypeStepStart, PartTypeStepFinish, PartTypeSnapshot, PartTypePatch, PartTypeAgent:
case PartTypeText, PartTypeReasoning, PartTypeFile, PartTypeTool, PartTypeStepStart, PartTypeStepFinish, PartTypeSnapshot, PartTypePatch, PartTypeAgent, PartTypeRetry:
return true
}
return false
@@ -1280,16 +1508,17 @@ func (r ReasoningPartType) IsKnown() bool {
}
type Session struct {
ID string `json:"id,required"`
Directory string `json:"directory,required"`
ProjectID string `json:"projectID,required"`
Time SessionTime `json:"time,required"`
Title string `json:"title,required"`
Version string `json:"version,required"`
ParentID string `json:"parentID"`
Revert SessionRevert `json:"revert"`
Share SessionShare `json:"share"`
JSON sessionJSON `json:"-"`
ID string `json:"id,required"`
Directory string `json:"directory,required"`
ProjectID string `json:"projectID,required"`
Time SessionTime `json:"time,required"`
Title string `json:"title,required"`
Version string `json:"version,required"`
ParentID string `json:"parentID"`
Revert SessionRevert `json:"revert"`
Share SessionShare `json:"share"`
Summary SessionSummary `json:"summary"`
JSON sessionJSON `json:"-"`
}
// sessionJSON contains the JSON metadata for the struct [Session]
@@ -1303,6 +1532,7 @@ type sessionJSON struct {
ParentID apijson.Field
Revert apijson.Field
Share apijson.Field
Summary apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
@@ -1385,6 +1615,55 @@ func (r sessionShareJSON) RawJSON() string {
return r.raw
}
type SessionSummary struct {
Diffs []SessionSummaryDiff `json:"diffs,required"`
JSON sessionSummaryJSON `json:"-"`
}
// sessionSummaryJSON contains the JSON metadata for the struct [SessionSummary]
type sessionSummaryJSON struct {
Diffs apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *SessionSummary) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r sessionSummaryJSON) RawJSON() string {
return r.raw
}
type SessionSummaryDiff struct {
Additions float64 `json:"additions,required"`
After string `json:"after,required"`
Before string `json:"before,required"`
Deletions float64 `json:"deletions,required"`
File string `json:"file,required"`
JSON sessionSummaryDiffJSON `json:"-"`
}
// sessionSummaryDiffJSON contains the JSON metadata for the struct
// [SessionSummaryDiff]
type sessionSummaryDiffJSON struct {
Additions apijson.Field
After apijson.Field
Before apijson.Field
Deletions apijson.Field
File apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *SessionSummaryDiff) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r sessionSummaryDiffJSON) RawJSON() string {
return r.raw
}
type SnapshotPart struct {
ID string `json:"id,required"`
MessageID string `json:"messageID,required"`
@@ -1433,9 +1712,11 @@ type StepFinishPart struct {
ID string `json:"id,required"`
Cost float64 `json:"cost,required"`
MessageID string `json:"messageID,required"`
Reason string `json:"reason,required"`
SessionID string `json:"sessionID,required"`
Tokens StepFinishPartTokens `json:"tokens,required"`
Type StepFinishPartType `json:"type,required"`
Snapshot string `json:"snapshot"`
JSON stepFinishPartJSON `json:"-"`
}
@@ -1444,9 +1725,11 @@ type stepFinishPartJSON struct {
ID apijson.Field
Cost apijson.Field
MessageID apijson.Field
Reason apijson.Field
SessionID apijson.Field
Tokens apijson.Field
Type apijson.Field
Snapshot apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
@@ -1530,6 +1813,7 @@ type StepStartPart struct {
MessageID string `json:"messageID,required"`
SessionID string `json:"sessionID,required"`
Type StepStartPartType `json:"type,required"`
Snapshot string `json:"snapshot"`
JSON stepStartPartJSON `json:"-"`
}
@@ -1539,6 +1823,7 @@ type stepStartPartJSON struct {
MessageID apijson.Field
SessionID apijson.Field
Type apijson.Field
Snapshot apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
@@ -1872,7 +2157,9 @@ func (r ToolPart) implementsPart() {}
type ToolPartState struct {
Status ToolPartStateStatus `json:"status,required"`
Error string `json:"error"`
// This field can have the runtime type of [[]FilePart].
Attachments interface{} `json:"attachments"`
Error string `json:"error"`
// This field can have the runtime type of [interface{}], [map[string]interface{}].
Input interface{} `json:"input"`
// This field can have the runtime type of [map[string]interface{}].
@@ -1889,6 +2176,7 @@ type ToolPartState struct {
// toolPartStateJSON contains the JSON metadata for the struct [ToolPartState]
type toolPartStateJSON struct {
Status apijson.Field
Attachments apijson.Field
Error apijson.Field
Input apijson.Field
Metadata apijson.Field
@@ -1982,13 +2270,14 @@ func (r ToolPartType) IsKnown() bool {
}
type ToolStateCompleted struct {
Input map[string]interface{} `json:"input,required"`
Metadata map[string]interface{} `json:"metadata,required"`
Output string `json:"output,required"`
Status ToolStateCompletedStatus `json:"status,required"`
Time ToolStateCompletedTime `json:"time,required"`
Title string `json:"title,required"`
JSON toolStateCompletedJSON `json:"-"`
Input map[string]interface{} `json:"input,required"`
Metadata map[string]interface{} `json:"metadata,required"`
Output string `json:"output,required"`
Status ToolStateCompletedStatus `json:"status,required"`
Time ToolStateCompletedTime `json:"time,required"`
Title string `json:"title,required"`
Attachments []FilePart `json:"attachments"`
JSON toolStateCompletedJSON `json:"-"`
}
// toolStateCompletedJSON contains the JSON metadata for the struct
@@ -2000,6 +2289,7 @@ type toolStateCompletedJSON struct {
Status apijson.Field
Time apijson.Field
Title apijson.Field
Attachments apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
@@ -2224,11 +2514,12 @@ func (r toolStateRunningTimeJSON) RawJSON() string {
}
type UserMessage struct {
ID string `json:"id,required"`
Role UserMessageRole `json:"role,required"`
SessionID string `json:"sessionID,required"`
Time UserMessageTime `json:"time,required"`
JSON userMessageJSON `json:"-"`
ID string `json:"id,required"`
Role UserMessageRole `json:"role,required"`
SessionID string `json:"sessionID,required"`
Time UserMessageTime `json:"time,required"`
Summary UserMessageSummary `json:"summary"`
JSON userMessageJSON `json:"-"`
}
// userMessageJSON contains the JSON metadata for the struct [UserMessage]
@@ -2237,6 +2528,7 @@ type userMessageJSON struct {
Role apijson.Field
SessionID apijson.Field
Time apijson.Field
Summary apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
@@ -2285,6 +2577,60 @@ func (r userMessageTimeJSON) RawJSON() string {
return r.raw
}
type UserMessageSummary struct {
Diffs []UserMessageSummaryDiff `json:"diffs,required"`
Body string `json:"body"`
Title string `json:"title"`
JSON userMessageSummaryJSON `json:"-"`
}
// userMessageSummaryJSON contains the JSON metadata for the struct
// [UserMessageSummary]
type userMessageSummaryJSON struct {
Diffs apijson.Field
Body apijson.Field
Title apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *UserMessageSummary) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r userMessageSummaryJSON) RawJSON() string {
return r.raw
}
type UserMessageSummaryDiff struct {
Additions float64 `json:"additions,required"`
After string `json:"after,required"`
Before string `json:"before,required"`
Deletions float64 `json:"deletions,required"`
File string `json:"file,required"`
JSON userMessageSummaryDiffJSON `json:"-"`
}
// userMessageSummaryDiffJSON contains the JSON metadata for the struct
// [UserMessageSummaryDiff]
type userMessageSummaryDiffJSON struct {
Additions apijson.Field
After apijson.Field
Before apijson.Field
Deletions apijson.Field
File apijson.Field
raw string
ExtraFields map[string]apijson.Field
}
func (r *UserMessageSummaryDiff) UnmarshalJSON(data []byte) (err error) {
return apijson.UnmarshalRoot(data, r)
}
func (r userMessageSummaryDiffJSON) RawJSON() string {
return r.raw
}
type SessionCommandResponse struct {
Info AssistantMessage `json:"info,required"`
Parts []Part `json:"parts,required"`
@@ -2542,6 +2888,7 @@ type SessionPromptParams struct {
Agent param.Field[string] `json:"agent"`
MessageID param.Field[string] `json:"messageID"`
Model param.Field[SessionPromptParamsModel] `json:"model"`
NoReply param.Field[bool] `json:"noReply"`
System param.Field[string] `json:"system"`
Tools param.Field[map[string]bool] `json:"tools"`
}

View File

@@ -361,7 +361,8 @@ func TestSessionPromptWithOptionalParams(t *testing.T) {
ModelID: opencode.F("modelID"),
ProviderID: opencode.F("providerID"),
}),
System: opencode.F("system"),
NoReply: opencode.F(true),
System: opencode.F("system"),
Tools: opencode.F(map[string]bool{
"foo": true,
}),