Documentation
¶
Index ¶
- Constants
- type Config
- type GhostMetadata
- type MessageMetadata
- type OpenCode
- type OpenCodeClient
- func (oc *OpenCodeClient) BackgroundContext(ctx context.Context) context.Context
- func (oc *OpenCodeClient) CleanupPortal(ctx context.Context, portal *bridgev2.Portal, reason string)
- func (oc *OpenCodeClient) Connect(ctx context.Context)
- func (oc *OpenCodeClient) DefaultAgentID() string
- func (oc *OpenCodeClient) Disconnect()
- func (oc *OpenCodeClient) DownloadAndEncodeMedia(ctx context.Context, mediaURL string, file *event.EncryptedFileInfo, maxMB int) (string, string, error)
- func (oc *OpenCodeClient) EmitOpenCodeStreamEvent(ctx context.Context, portal *bridgev2.Portal, ...)
- func (oc *OpenCodeClient) FetchMessages(ctx context.Context, params bridgev2.FetchMessagesParams) (*bridgev2.FetchMessagesResponse, error)
- func (oc *OpenCodeClient) FinishOpenCodeStream(turnID string)
- func (oc *OpenCodeClient) GetCapabilities(_ context.Context, _ *bridgev2.Portal) *event.RoomFeatures
- func (oc *OpenCodeClient) GetChatInfo(_ context.Context, portal *bridgev2.Portal) (*bridgev2.ChatInfo, error)
- func (oc *OpenCodeClient) GetContactList(ctx context.Context) ([]*bridgev2.ResolveIdentifierResponse, error)
- func (oc *OpenCodeClient) GetUserInfo(_ context.Context, ghost *bridgev2.Ghost) (*bridgev2.UserInfo, error)
- func (oc *OpenCodeClient) HandleMatrixDeleteChat(ctx context.Context, msg *bridgev2.MatrixDeleteChat) error
- func (oc *OpenCodeClient) HandleMatrixMessage(ctx context.Context, msg *bridgev2.MatrixMessage) (*bridgev2.MatrixMessageResponse, error)
- func (oc *OpenCodeClient) HumanUserID(loginID networkid.UserLoginID) networkid.UserID
- func (oc *OpenCodeClient) IsLoggedIn() bool
- func (oc *OpenCodeClient) IsThisUser(_ context.Context, userID networkid.UserID) bool
- func (oc *OpenCodeClient) Log() *zerolog.Logger
- func (oc *OpenCodeClient) Login() *bridgev2.UserLogin
- func (oc *OpenCodeClient) LogoutRemote(_ context.Context)
- func (oc *OpenCodeClient) OpenCodeInstances() map[string]*opencodebridge.OpenCodeInstance
- func (oc *OpenCodeClient) PortalMeta(portal *bridgev2.Portal) *opencodebridge.PortalMeta
- func (oc *OpenCodeClient) ResolveIdentifier(ctx context.Context, identifier string, createChat bool) (*bridgev2.ResolveIdentifierResponse, error)
- func (oc *OpenCodeClient) RoomCapabilitiesEventType() event.Type
- func (oc *OpenCodeClient) RoomSettingsEventType() event.Type
- func (oc *OpenCodeClient) SaveOpenCodeInstances(ctx context.Context, instances map[string]*opencodebridge.OpenCodeInstance) error
- func (oc *OpenCodeClient) SavePortal(ctx context.Context, portal *bridgev2.Portal) error
- func (oc *OpenCodeClient) SendSystemNotice(ctx context.Context, portal *bridgev2.Portal, msg string)
- func (oc *OpenCodeClient) SenderForOpenCode(instanceID string, fromMe bool) bridgev2.EventSender
- func (oc *OpenCodeClient) SetPortalMeta(portal *bridgev2.Portal, meta *opencodebridge.PortalMeta)
- func (oc *OpenCodeClient) SetRoomName(_ context.Context, _ *bridgev2.Portal, _ string) error
- type OpenCodeConnector
- func (oc *OpenCodeConnector) CreateLogin(_ context.Context, user *bridgev2.User, flowID string) (bridgev2.LoginProcess, error)
- func (oc *OpenCodeConnector) FillPortalBridgeInfo(portal *bridgev2.Portal, content *event.BridgeEventContent)
- func (oc *OpenCodeConnector) GetBridgeInfoVersion() (info, capabilities int)
- func (oc *OpenCodeConnector) GetCapabilities() *bridgev2.NetworkGeneralCapabilities
- func (oc *OpenCodeConnector) GetConfig() (example string, data any, upgrader configupgrade.Upgrader)
- func (oc *OpenCodeConnector) GetDBMetaTypes() database.MetaTypes
- func (oc *OpenCodeConnector) GetLoginFlows() []bridgev2.LoginFlow
- func (oc *OpenCodeConnector) GetName() bridgev2.BridgeName
- func (oc *OpenCodeConnector) Init(bridge *bridgev2.Bridge)
- func (oc *OpenCodeConnector) LoadUserLogin(_ context.Context, login *bridgev2.UserLogin) error
- func (oc *OpenCodeConnector) Start(_ context.Context) error
- func (oc *OpenCodeConnector) Stop(_ context.Context)
- type OpenCodeLogin
- type OpenCodeRemoteEdit
- func (e *OpenCodeRemoteEdit) AddLogContext(c zerolog.Context) zerolog.Context
- func (e *OpenCodeRemoteEdit) ConvertEdit(_ context.Context, _ *bridgev2.Portal, _ bridgev2.MatrixAPI, ...) (*bridgev2.ConvertedEdit, error)
- func (e *OpenCodeRemoteEdit) GetPortalKey() networkid.PortalKey
- func (e *OpenCodeRemoteEdit) GetSender() bridgev2.EventSender
- func (e *OpenCodeRemoteEdit) GetStreamOrder() int64
- func (e *OpenCodeRemoteEdit) GetTargetMessage() networkid.MessageID
- func (e *OpenCodeRemoteEdit) GetTimestamp() time.Time
- func (e *OpenCodeRemoteEdit) GetType() bridgev2.RemoteEventType
- type OpenCodeRemoteMessage
- func (m *OpenCodeRemoteMessage) AddLogContext(c zerolog.Context) zerolog.Context
- func (m *OpenCodeRemoteMessage) ConvertMessage(_ context.Context, _ *bridgev2.Portal, _ bridgev2.MatrixAPI) (*bridgev2.ConvertedMessage, error)
- func (m *OpenCodeRemoteMessage) GetID() networkid.MessageID
- func (m *OpenCodeRemoteMessage) GetPortalKey() networkid.PortalKey
- func (m *OpenCodeRemoteMessage) GetSender() bridgev2.EventSender
- func (m *OpenCodeRemoteMessage) GetStreamOrder() int64
- func (m *OpenCodeRemoteMessage) GetTimestamp() time.Time
- func (m *OpenCodeRemoteMessage) GetType() bridgev2.RemoteEventType
- type PortalMetadata
- type UserLoginMetadata
Constants ¶
View Source
const ProviderOpenCode = "opencode"
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
Bridge bridgeconfig.BridgeConfig `yaml:"bridge"`
OpenCode OpenCode `yaml:"opencode"`
}
type GhostMetadata ¶
type GhostMetadata struct{}
type MessageMetadata ¶
type MessageMetadata struct{}
type OpenCodeClient ¶
type OpenCodeClient struct {
UserLogin *bridgev2.UserLogin
// contains filtered or unexported fields
}
func (*OpenCodeClient) BackgroundContext ¶
func (oc *OpenCodeClient) BackgroundContext(ctx context.Context) context.Context
func (*OpenCodeClient) CleanupPortal ¶
func (*OpenCodeClient) Connect ¶
func (oc *OpenCodeClient) Connect(ctx context.Context)
func (*OpenCodeClient) DefaultAgentID ¶
func (oc *OpenCodeClient) DefaultAgentID() string
func (*OpenCodeClient) Disconnect ¶
func (oc *OpenCodeClient) Disconnect()
func (*OpenCodeClient) DownloadAndEncodeMedia ¶
func (oc *OpenCodeClient) DownloadAndEncodeMedia(ctx context.Context, mediaURL string, file *event.EncryptedFileInfo, maxMB int) (string, string, error)
func (*OpenCodeClient) EmitOpenCodeStreamEvent ¶
func (*OpenCodeClient) FetchMessages ¶
func (oc *OpenCodeClient) FetchMessages(ctx context.Context, params bridgev2.FetchMessagesParams) (*bridgev2.FetchMessagesResponse, error)
func (*OpenCodeClient) FinishOpenCodeStream ¶
func (oc *OpenCodeClient) FinishOpenCodeStream(turnID string)
func (*OpenCodeClient) GetCapabilities ¶
func (oc *OpenCodeClient) GetCapabilities(_ context.Context, _ *bridgev2.Portal) *event.RoomFeatures
func (*OpenCodeClient) GetChatInfo ¶
func (*OpenCodeClient) GetContactList ¶
func (oc *OpenCodeClient) GetContactList(ctx context.Context) ([]*bridgev2.ResolveIdentifierResponse, error)
func (*OpenCodeClient) GetUserInfo ¶
func (*OpenCodeClient) HandleMatrixDeleteChat ¶
func (oc *OpenCodeClient) HandleMatrixDeleteChat(ctx context.Context, msg *bridgev2.MatrixDeleteChat) error
func (*OpenCodeClient) HandleMatrixMessage ¶
func (oc *OpenCodeClient) HandleMatrixMessage(ctx context.Context, msg *bridgev2.MatrixMessage) (*bridgev2.MatrixMessageResponse, error)
func (*OpenCodeClient) HumanUserID ¶
func (oc *OpenCodeClient) HumanUserID(loginID networkid.UserLoginID) networkid.UserID
func (*OpenCodeClient) IsLoggedIn ¶
func (oc *OpenCodeClient) IsLoggedIn() bool
func (*OpenCodeClient) IsThisUser ¶
func (*OpenCodeClient) Log ¶
func (oc *OpenCodeClient) Log() *zerolog.Logger
func (*OpenCodeClient) Login ¶
func (oc *OpenCodeClient) Login() *bridgev2.UserLogin
func (*OpenCodeClient) LogoutRemote ¶
func (oc *OpenCodeClient) LogoutRemote(_ context.Context)
func (*OpenCodeClient) OpenCodeInstances ¶
func (oc *OpenCodeClient) OpenCodeInstances() map[string]*opencodebridge.OpenCodeInstance
func (*OpenCodeClient) PortalMeta ¶
func (oc *OpenCodeClient) PortalMeta(portal *bridgev2.Portal) *opencodebridge.PortalMeta
func (*OpenCodeClient) ResolveIdentifier ¶
func (oc *OpenCodeClient) ResolveIdentifier(ctx context.Context, identifier string, createChat bool) (*bridgev2.ResolveIdentifierResponse, error)
func (*OpenCodeClient) RoomCapabilitiesEventType ¶
func (oc *OpenCodeClient) RoomCapabilitiesEventType() event.Type
func (*OpenCodeClient) RoomSettingsEventType ¶
func (oc *OpenCodeClient) RoomSettingsEventType() event.Type
func (*OpenCodeClient) SaveOpenCodeInstances ¶
func (oc *OpenCodeClient) SaveOpenCodeInstances(ctx context.Context, instances map[string]*opencodebridge.OpenCodeInstance) error
func (*OpenCodeClient) SavePortal ¶
func (*OpenCodeClient) SendSystemNotice ¶
func (*OpenCodeClient) SenderForOpenCode ¶
func (oc *OpenCodeClient) SenderForOpenCode(instanceID string, fromMe bool) bridgev2.EventSender
func (*OpenCodeClient) SetPortalMeta ¶
func (oc *OpenCodeClient) SetPortalMeta(portal *bridgev2.Portal, meta *opencodebridge.PortalMeta)
func (*OpenCodeClient) SetRoomName ¶
type OpenCodeConnector ¶
type OpenCodeConnector struct {
Config Config
// contains filtered or unexported fields
}
func NewConnector ¶
func NewConnector() *OpenCodeConnector
func (*OpenCodeConnector) CreateLogin ¶
func (oc *OpenCodeConnector) CreateLogin(_ context.Context, user *bridgev2.User, flowID string) (bridgev2.LoginProcess, error)
func (*OpenCodeConnector) FillPortalBridgeInfo ¶
func (oc *OpenCodeConnector) FillPortalBridgeInfo(portal *bridgev2.Portal, content *event.BridgeEventContent)
func (*OpenCodeConnector) GetBridgeInfoVersion ¶
func (oc *OpenCodeConnector) GetBridgeInfoVersion() (info, capabilities int)
func (*OpenCodeConnector) GetCapabilities ¶
func (oc *OpenCodeConnector) GetCapabilities() *bridgev2.NetworkGeneralCapabilities
func (*OpenCodeConnector) GetConfig ¶
func (oc *OpenCodeConnector) GetConfig() (example string, data any, upgrader configupgrade.Upgrader)
func (*OpenCodeConnector) GetDBMetaTypes ¶
func (oc *OpenCodeConnector) GetDBMetaTypes() database.MetaTypes
func (*OpenCodeConnector) GetLoginFlows ¶
func (oc *OpenCodeConnector) GetLoginFlows() []bridgev2.LoginFlow
func (*OpenCodeConnector) GetName ¶
func (oc *OpenCodeConnector) GetName() bridgev2.BridgeName
func (*OpenCodeConnector) Init ¶
func (oc *OpenCodeConnector) Init(bridge *bridgev2.Bridge)
func (*OpenCodeConnector) LoadUserLogin ¶
func (*OpenCodeConnector) Stop ¶
func (oc *OpenCodeConnector) Stop(_ context.Context)
type OpenCodeLogin ¶
type OpenCodeLogin struct {
User *bridgev2.User
Connector *OpenCodeConnector
// contains filtered or unexported fields
}
func (*OpenCodeLogin) Cancel ¶
func (ol *OpenCodeLogin) Cancel()
func (*OpenCodeLogin) SubmitUserInput ¶
type OpenCodeRemoteEdit ¶
type OpenCodeRemoteEdit struct {
// contains filtered or unexported fields
}
OpenCodeRemoteEdit is a RemoteEdit for OpenCode streaming response edits.
func (*OpenCodeRemoteEdit) AddLogContext ¶
func (e *OpenCodeRemoteEdit) AddLogContext(c zerolog.Context) zerolog.Context
func (*OpenCodeRemoteEdit) ConvertEdit ¶
func (*OpenCodeRemoteEdit) GetPortalKey ¶
func (e *OpenCodeRemoteEdit) GetPortalKey() networkid.PortalKey
func (*OpenCodeRemoteEdit) GetSender ¶
func (e *OpenCodeRemoteEdit) GetSender() bridgev2.EventSender
func (*OpenCodeRemoteEdit) GetStreamOrder ¶
func (e *OpenCodeRemoteEdit) GetStreamOrder() int64
func (*OpenCodeRemoteEdit) GetTargetMessage ¶
func (e *OpenCodeRemoteEdit) GetTargetMessage() networkid.MessageID
func (*OpenCodeRemoteEdit) GetTimestamp ¶
func (e *OpenCodeRemoteEdit) GetTimestamp() time.Time
func (*OpenCodeRemoteEdit) GetType ¶
func (e *OpenCodeRemoteEdit) GetType() bridgev2.RemoteEventType
type OpenCodeRemoteMessage ¶
type OpenCodeRemoteMessage struct {
// contains filtered or unexported fields
}
OpenCodeRemoteMessage is a RemoteMessage for OpenCode-generated content routed through bridgev2.
func (*OpenCodeRemoteMessage) AddLogContext ¶
func (m *OpenCodeRemoteMessage) AddLogContext(c zerolog.Context) zerolog.Context
func (*OpenCodeRemoteMessage) ConvertMessage ¶
func (m *OpenCodeRemoteMessage) ConvertMessage(_ context.Context, _ *bridgev2.Portal, _ bridgev2.MatrixAPI) (*bridgev2.ConvertedMessage, error)
func (*OpenCodeRemoteMessage) GetID ¶
func (m *OpenCodeRemoteMessage) GetID() networkid.MessageID
func (*OpenCodeRemoteMessage) GetPortalKey ¶
func (m *OpenCodeRemoteMessage) GetPortalKey() networkid.PortalKey
func (*OpenCodeRemoteMessage) GetSender ¶
func (m *OpenCodeRemoteMessage) GetSender() bridgev2.EventSender
func (*OpenCodeRemoteMessage) GetStreamOrder ¶
func (m *OpenCodeRemoteMessage) GetStreamOrder() int64
func (*OpenCodeRemoteMessage) GetTimestamp ¶
func (m *OpenCodeRemoteMessage) GetTimestamp() time.Time
func (*OpenCodeRemoteMessage) GetType ¶
func (m *OpenCodeRemoteMessage) GetType() bridgev2.RemoteEventType
type PortalMetadata ¶
type PortalMetadata struct {
Title string `json:"title,omitempty"`
TitleGenerated bool `json:"title_generated,omitempty"`
IsOpenCodeRoom bool `json:"is_opencode_room,omitempty"`
OpenCodeInstanceID string `json:"opencode_instance_id,omitempty"`
OpenCodeSessionID string `json:"opencode_session_id,omitempty"`
OpenCodeReadOnly bool `json:"opencode_read_only,omitempty"`
OpenCodeTitlePending bool `json:"opencode_title_pending,omitempty"`
OpenCodeAwaitingPath bool `json:"opencode_awaiting_path,omitempty"`
AgentID string `json:"agent_id,omitempty"`
VerboseLevel string `json:"verbose_level,omitempty"`
}
type UserLoginMetadata ¶
type UserLoginMetadata struct {
Provider string `json:"provider,omitempty"`
OpenCodeInstances map[string]*opencodebridge.OpenCodeInstance `json:"opencode_instances,omitempty"`
}
Source Files
¶
Click to show internal directories.
Click to hide internal directories.