diff options
Diffstat (limited to 'packages/tui')
| -rw-r--r-- | packages/tui/sdk/.stats.yml | 4 | ||||
| -rw-r--r-- | packages/tui/sdk/config.go | 26 | ||||
| -rw-r--r-- | packages/tui/sdk/event.go | 73 | ||||
| -rw-r--r-- | packages/tui/sdk/session.go | 87 |
4 files changed, 173 insertions, 17 deletions
diff --git a/packages/tui/sdk/.stats.yml b/packages/tui/sdk/.stats.yml index da0b08b5a..e9e292b78 100644 --- a/packages/tui/sdk/.stats.yml +++ b/packages/tui/sdk/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 26 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/opencode%2Fopencode-1efc45c35b58e88b0550fbb0c7a204ef66522742f87c9e29c76a18b120c0d945.yml -openapi_spec_hash: 5e15d85e4704624f9b13bae1c71aa416 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/opencode%2Fopencode-5748199af356c3243a46a466e73b5d0bab7eaa0c56895e1d0f903d637f61d0bb.yml +openapi_spec_hash: c04f6b6be54b05d9b1283c24e870163b config_hash: 1ae82c93499b9f0b9ba828b8919f9cb3 diff --git a/packages/tui/sdk/config.go b/packages/tui/sdk/config.go index 96759fc47..763fead44 100644 --- a/packages/tui/sdk/config.go +++ b/packages/tui/sdk/config.go @@ -333,7 +333,7 @@ type ConfigProvider struct { Env []string `json:"env"` Name string `json:"name"` Npm string `json:"npm"` - Options map[string]interface{} `json:"options"` + Options ConfigProviderOptions `json:"options"` JSON configProviderJSON `json:"-"` } @@ -447,6 +447,30 @@ func (r configProviderModelsLimitJSON) RawJSON() string { return r.raw } +type ConfigProviderOptions struct { + APIKey string `json:"apiKey"` + BaseURL string `json:"baseURL"` + ExtraFields map[string]interface{} `json:"-,extras"` + JSON configProviderOptionsJSON `json:"-"` +} + +// configProviderOptionsJSON contains the JSON metadata for the struct +// [ConfigProviderOptions] +type configProviderOptionsJSON struct { + APIKey apijson.Field + BaseURL apijson.Field + raw string + ExtraFields map[string]apijson.Field +} + +func (r *ConfigProviderOptions) UnmarshalJSON(data []byte) (err error) { + return apijson.UnmarshalRoot(data, r) +} + +func (r configProviderOptionsJSON) RawJSON() string { + return r.raw +} + // Control sharing behavior:'manual' allows manual sharing via commands, 'auto' // enables automatic sharing, 'disabled' disables all sharing type ConfigShare string diff --git a/packages/tui/sdk/event.go b/packages/tui/sdk/event.go index 72517a99c..fca2c6fe4 100644 --- a/packages/tui/sdk/event.go +++ b/packages/tui/sdk/event.go @@ -55,6 +55,7 @@ type EventListResponse struct { // [EventListResponseEventMessageUpdatedProperties], // [EventListResponseEventMessageRemovedProperties], // [EventListResponseEventMessagePartUpdatedProperties], + // [EventListResponseEventMessagePartRemovedProperties], // [EventListResponseEventStorageWriteProperties], // [EventListResponseEventSessionUpdatedProperties], // [EventListResponseEventSessionDeletedProperties], @@ -99,6 +100,7 @@ func (r *EventListResponse) UnmarshalJSON(data []byte) (err error) { // [EventListResponseEventInstallationUpdated], // [EventListResponseEventMessageUpdated], [EventListResponseEventMessageRemoved], // [EventListResponseEventMessagePartUpdated], +// [EventListResponseEventMessagePartRemoved], // [EventListResponseEventStorageWrite], [EventListResponseEventSessionUpdated], // [EventListResponseEventSessionDeleted], [EventListResponseEventSessionIdle], // [EventListResponseEventSessionError], @@ -113,6 +115,7 @@ func (r EventListResponse) AsUnion() EventListResponseUnion { // [EventListResponseEventInstallationUpdated], // [EventListResponseEventMessageUpdated], [EventListResponseEventMessageRemoved], // [EventListResponseEventMessagePartUpdated], +// [EventListResponseEventMessagePartRemoved], // [EventListResponseEventStorageWrite], [EventListResponseEventSessionUpdated], // [EventListResponseEventSessionDeleted], [EventListResponseEventSessionIdle], // [EventListResponseEventSessionError], [EventListResponseEventFileWatcherUpdated] @@ -162,6 +165,11 @@ func init() { }, apijson.UnionVariant{ TypeFilter: gjson.JSON, + Type: reflect.TypeOf(EventListResponseEventMessagePartRemoved{}), + DiscriminatorValue: "message.part.removed", + }, + apijson.UnionVariant{ + TypeFilter: gjson.JSON, Type: reflect.TypeOf(EventListResponseEventStorageWrite{}), DiscriminatorValue: "storage.write", }, @@ -651,6 +659,68 @@ func (r EventListResponseEventMessagePartUpdatedType) IsKnown() bool { return false } +type EventListResponseEventMessagePartRemoved struct { + Properties EventListResponseEventMessagePartRemovedProperties `json:"properties,required"` + Type EventListResponseEventMessagePartRemovedType `json:"type,required"` + JSON eventListResponseEventMessagePartRemovedJSON `json:"-"` +} + +// eventListResponseEventMessagePartRemovedJSON contains the JSON metadata for the +// struct [EventListResponseEventMessagePartRemoved] +type eventListResponseEventMessagePartRemovedJSON struct { + Properties apijson.Field + Type apijson.Field + raw string + ExtraFields map[string]apijson.Field +} + +func (r *EventListResponseEventMessagePartRemoved) UnmarshalJSON(data []byte) (err error) { + return apijson.UnmarshalRoot(data, r) +} + +func (r eventListResponseEventMessagePartRemovedJSON) RawJSON() string { + return r.raw +} + +func (r EventListResponseEventMessagePartRemoved) implementsEventListResponse() {} + +type EventListResponseEventMessagePartRemovedProperties struct { + MessageID string `json:"messageID,required"` + PartID string `json:"partID,required"` + JSON eventListResponseEventMessagePartRemovedPropertiesJSON `json:"-"` +} + +// eventListResponseEventMessagePartRemovedPropertiesJSON contains the JSON +// metadata for the struct [EventListResponseEventMessagePartRemovedProperties] +type eventListResponseEventMessagePartRemovedPropertiesJSON struct { + MessageID apijson.Field + PartID apijson.Field + raw string + ExtraFields map[string]apijson.Field +} + +func (r *EventListResponseEventMessagePartRemovedProperties) UnmarshalJSON(data []byte) (err error) { + return apijson.UnmarshalRoot(data, r) +} + +func (r eventListResponseEventMessagePartRemovedPropertiesJSON) RawJSON() string { + return r.raw +} + +type EventListResponseEventMessagePartRemovedType string + +const ( + EventListResponseEventMessagePartRemovedTypeMessagePartRemoved EventListResponseEventMessagePartRemovedType = "message.part.removed" +) + +func (r EventListResponseEventMessagePartRemovedType) IsKnown() bool { + switch r { + case EventListResponseEventMessagePartRemovedTypeMessagePartRemoved: + return true + } + return false +} + type EventListResponseEventStorageWrite struct { Properties EventListResponseEventStorageWriteProperties `json:"properties,required"` Type EventListResponseEventStorageWriteType `json:"type,required"` @@ -1236,6 +1306,7 @@ const ( EventListResponseTypeMessageUpdated EventListResponseType = "message.updated" EventListResponseTypeMessageRemoved EventListResponseType = "message.removed" EventListResponseTypeMessagePartUpdated EventListResponseType = "message.part.updated" + EventListResponseTypeMessagePartRemoved EventListResponseType = "message.part.removed" EventListResponseTypeStorageWrite EventListResponseType = "storage.write" EventListResponseTypeSessionUpdated EventListResponseType = "session.updated" EventListResponseTypeSessionDeleted EventListResponseType = "session.deleted" @@ -1247,7 +1318,7 @@ const ( func (r EventListResponseType) IsKnown() bool { switch r { - case EventListResponseTypeLspClientDiagnostics, EventListResponseTypePermissionUpdated, EventListResponseTypeFileEdited, EventListResponseTypeInstallationUpdated, EventListResponseTypeMessageUpdated, EventListResponseTypeMessageRemoved, EventListResponseTypeMessagePartUpdated, EventListResponseTypeStorageWrite, EventListResponseTypeSessionUpdated, EventListResponseTypeSessionDeleted, EventListResponseTypeSessionIdle, EventListResponseTypeSessionError, EventListResponseTypeFileWatcherUpdated, EventListResponseTypeIdeInstalled: + case EventListResponseTypeLspClientDiagnostics, EventListResponseTypePermissionUpdated, EventListResponseTypeFileEdited, EventListResponseTypeInstallationUpdated, EventListResponseTypeMessageUpdated, EventListResponseTypeMessageRemoved, EventListResponseTypeMessagePartUpdated, EventListResponseTypeMessagePartRemoved, EventListResponseTypeStorageWrite, EventListResponseTypeSessionUpdated, EventListResponseTypeSessionDeleted, EventListResponseTypeSessionIdle, EventListResponseTypeSessionError, EventListResponseTypeFileWatcherUpdated, EventListResponseTypeIdeInstalled: return true } return false diff --git a/packages/tui/sdk/session.go b/packages/tui/sdk/session.go index 86d46000d..813cf00d6 100644 --- a/packages/tui/sdk/session.go +++ b/packages/tui/sdk/session.go @@ -175,6 +175,7 @@ func (r *SessionService) Unshare(ctx context.Context, id string, opts ...option. type AssistantMessage struct { ID string `json:"id,required"` Cost float64 `json:"cost,required"` + Mode string `json:"mode,required"` ModelID string `json:"modelID,required"` Path AssistantMessagePath `json:"path,required"` ProviderID string `json:"providerID,required"` @@ -193,6 +194,7 @@ type AssistantMessage struct { type assistantMessageJSON struct { ID apijson.Field Cost apijson.Field + Mode apijson.Field ModelID apijson.Field Path apijson.Field ProviderID apijson.Field @@ -735,6 +737,7 @@ type Message struct { 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"` // This field can have the runtime type of [AssistantMessagePath]. Path interface{} `json:"path"` @@ -756,6 +759,7 @@ type messageJSON struct { Time apijson.Field Cost apijson.Field Error apijson.Field + Mode apijson.Field ModelID apijson.Field Path apijson.Field ProviderID apijson.Field @@ -825,16 +829,19 @@ func (r MessageRole) IsKnown() bool { } type Part struct { - ID string `json:"id,required"` - MessageID string `json:"messageID,required"` - SessionID string `json:"sessionID,required"` - Type PartType `json:"type,required"` - CallID string `json:"callID"` - Cost float64 `json:"cost"` - Filename string `json:"filename"` - Mime string `json:"mime"` - Snapshot string `json:"snapshot"` - Source FilePartSource `json:"source"` + ID string `json:"id,required"` + MessageID string `json:"messageID,required"` + SessionID string `json:"sessionID,required"` + Type PartType `json:"type,required"` + CallID string `json:"callID"` + Cost float64 `json:"cost"` + Filename string `json:"filename"` + // This field can have the runtime type of [[]string]. + Files interface{} `json:"files"` + Hash string `json:"hash"` + Mime string `json:"mime"` + Snapshot string `json:"snapshot"` + Source FilePartSource `json:"source"` // This field can have the runtime type of [ToolPartState]. State interface{} `json:"state"` Synthetic bool `json:"synthetic"` @@ -858,6 +865,8 @@ type partJSON struct { CallID apijson.Field Cost apijson.Field Filename apijson.Field + Files apijson.Field + Hash apijson.Field Mime apijson.Field Snapshot apijson.Field Source apijson.Field @@ -889,13 +898,13 @@ func (r *Part) UnmarshalJSON(data []byte) (err error) { // for more type safety. // // Possible runtime types of the union are [TextPart], [FilePart], [ToolPart], -// [StepStartPart], [StepFinishPart], [SnapshotPart]. +// [StepStartPart], [StepFinishPart], [SnapshotPart], [PartPatchPart]. func (r Part) AsUnion() PartUnion { return r.union } // Union satisfied by [TextPart], [FilePart], [ToolPart], [StepStartPart], -// [StepFinishPart] or [SnapshotPart]. +// [StepFinishPart], [SnapshotPart] or [PartPatchPart]. type PartUnion interface { implementsPart() } @@ -934,9 +943,60 @@ func init() { Type: reflect.TypeOf(SnapshotPart{}), DiscriminatorValue: "snapshot", }, + apijson.UnionVariant{ + TypeFilter: gjson.JSON, + Type: reflect.TypeOf(PartPatchPart{}), + DiscriminatorValue: "patch", + }, ) } +type PartPatchPart struct { + ID string `json:"id,required"` + Files []string `json:"files,required"` + Hash string `json:"hash,required"` + MessageID string `json:"messageID,required"` + SessionID string `json:"sessionID,required"` + Type PartPatchPartType `json:"type,required"` + JSON partPatchPartJSON `json:"-"` +} + +// partPatchPartJSON contains the JSON metadata for the struct [PartPatchPart] +type partPatchPartJSON struct { + ID apijson.Field + Files apijson.Field + Hash apijson.Field + MessageID apijson.Field + SessionID apijson.Field + Type apijson.Field + raw string + ExtraFields map[string]apijson.Field +} + +func (r *PartPatchPart) UnmarshalJSON(data []byte) (err error) { + return apijson.UnmarshalRoot(data, r) +} + +func (r partPatchPartJSON) RawJSON() string { + return r.raw +} + +func (r PartPatchPart) implementsPart() {} + +type PartPatchPartType string + +const ( + PartPatchPartTypePatch PartPatchPartType = "patch" +) + +func (r PartPatchPartType) IsKnown() bool { + switch r { + case PartPatchPartTypePatch: + return true + } + return false +} + type PartType string const ( @@ -946,11 +1006,12 @@ const ( PartTypeStepStart PartType = "step-start" PartTypeStepFinish PartType = "step-finish" PartTypeSnapshot PartType = "snapshot" + PartTypePatch PartType = "patch" ) func (r PartType) IsKnown() bool { switch r { - case PartTypeText, PartTypeFile, PartTypeTool, PartTypeStepStart, PartTypeStepFinish, PartTypeSnapshot: + case PartTypeText, PartTypeFile, PartTypeTool, PartTypeStepStart, PartTypeStepFinish, PartTypeSnapshot, PartTypePatch: return true } return false |
