agentapi
package v2.24.2
Go to latest Published: Jul 15, 2025 License:AGPL-3.0
Opens a new window with list of versions in this module.
Latest LatestThis package is not in the latest version of its module.
Opens a new window with license information.
Imports:51 Opens a new window with list of imports.
Imported by:0 Opens a new window with list of known importers.
Details
Validgo.mod file
The Go module system was introduced in Go 1.11 and is the official dependency management solution for Go.
Redistributable license
Redistributable licenses place minimal restrictions on how software can be used, modified, and redistributed.
Tagged version
Modules with tagged versions give importers more predictable builds.
Stable version
When a project reaches major version v1 it is considered stable.
- Learn more about best practices
Repository
Links
Documentation¶
Index¶
- func WatchWorkspaceAgentMetadataChannel(id uuid.UUID) string
- func WithAPIVersion(ctx context.Context, version string) context.Context
- type API
- type AnnouncementBannerAPI
- func (a *AnnouncementBannerAPI) GetAnnouncementBanners(ctx context.Context, _ *proto.GetAnnouncementBannersRequest) (*proto.GetAnnouncementBannersResponse, error)
- func (a *AnnouncementBannerAPI) GetServiceBanner(ctx context.Context, _ *proto.GetServiceBannerRequest) (*proto.ServiceBanner, error)deprecated
- type AppsAPI
- type AuditAPI
- type LifecycleAPI
- type LogsAPI
- type ManifestAPI
- type MetadataAPI
- type Options
- type ResourcesMonitoringAPI
- func (a *ResourcesMonitoringAPI) GetResourcesMonitoringConfiguration(ctx context.Context, _ *proto.GetResourcesMonitoringConfigurationRequest) (*proto.GetResourcesMonitoringConfigurationResponse, error)
- func (a *ResourcesMonitoringAPI) PushResourcesMonitoringUsage(ctx context.Context, req *proto.PushResourcesMonitoringUsageRequest) (*proto.PushResourcesMonitoringUsageResponse, error)
- type ScriptsAPI
- type StatsAPI
- type SubAgentAPI
- func (a *SubAgentAPI) CreateSubAgent(ctx context.Context, req *agentproto.CreateSubAgentRequest) (*agentproto.CreateSubAgentResponse, error)
- func (a *SubAgentAPI) DeleteSubAgent(ctx context.Context, req *agentproto.DeleteSubAgentRequest) (*agentproto.DeleteSubAgentResponse, error)
- func (a *SubAgentAPI) ListSubAgents(ctx context.Context, _ *agentproto.ListSubAgentsRequest) (*agentproto.ListSubAgentsResponse, error)
- type WorkspaceAgentMetadataChannelPayload
Constants¶
This section is empty.
Variables¶
This section is empty.
Functions¶
Types¶
typeAPI¶
type API struct {*ManifestAPI*AnnouncementBannerAPI*StatsAPI*LifecycleAPI*AppsAPI*MetadataAPI*ResourcesMonitoringAPI*LogsAPI*ScriptsAPI*AuditAPI*SubAgentAPI*tailnet.DRPCService// contains filtered or unexported fields}
API implements the DRPC agent API interface from agent/proto. This struct isinstantiated once per agent connection and kept alive for the duration of thesession.
typeAnnouncementBannerAPI¶added inv2.12.0
type AnnouncementBannerAPI struct {// contains filtered or unexported fields}
func (*AnnouncementBannerAPI)GetAnnouncementBanners¶added inv2.12.0
func (a *AnnouncementBannerAPI) GetAnnouncementBanners(ctxcontext.Context, _ *proto.GetAnnouncementBannersRequest) (*proto.GetAnnouncementBannersResponse,error)
func (*AnnouncementBannerAPI)GetServiceBannerdeprecatedadded inv2.12.0
func (a *AnnouncementBannerAPI) GetServiceBanner(ctxcontext.Context, _ *proto.GetServiceBannerRequest) (*proto.ServiceBanner,error)
Deprecated: GetServiceBanner has been deprecated in favor of GetAnnouncementBanners.
typeAppsAPI¶
type AppsAPI struct {AgentFn func(context.Context) (database.WorkspaceAgent,error)Databasedatabase.StoreLogslog.LoggerPublishWorkspaceUpdateFn func(context.Context, *database.WorkspaceAgent,wspubsub.WorkspaceEventKind)error}
func (*AppsAPI)BatchUpdateAppHealths¶
func (a *AppsAPI) BatchUpdateAppHealths(ctxcontext.Context, req *agentproto.BatchUpdateAppHealthRequest) (*agentproto.BatchUpdateAppHealthResponse,error)
typeAuditAPI¶added inv2.20.0
type AuditAPI struct {AgentFn func(context.Context) (database.WorkspaceAgent,error)Auditor *atomic.Pointer[audit.Auditor]Databasedatabase.StoreLogslog.Logger}
func (*AuditAPI)ReportConnection¶added inv2.20.0
func (a *AuditAPI) ReportConnection(ctxcontext.Context, req *agentproto.ReportConnectionRequest) (*emptypb.Empty,error)
typeLifecycleAPI¶
type LifecycleAPI struct {AgentFn func(context.Context) (database.WorkspaceAgent,error)WorkspaceIDuuid.UUIDDatabasedatabase.StoreLogslog.LoggerPublishWorkspaceUpdateFn func(context.Context, *database.WorkspaceAgent,wspubsub.WorkspaceEventKind)errorTimeNowFn func()time.Time// defaults to dbtime.Now()}
func (*LifecycleAPI)UpdateLifecycle¶
func (a *LifecycleAPI) UpdateLifecycle(ctxcontext.Context, req *agentproto.UpdateLifecycleRequest) (*agentproto.Lifecycle,error)
func (*LifecycleAPI)UpdateStartup¶
func (a *LifecycleAPI) UpdateStartup(ctxcontext.Context, req *agentproto.UpdateStartupRequest) (*agentproto.Startup,error)
typeLogsAPI¶
type LogsAPI struct {AgentFn func(context.Context) (database.WorkspaceAgent,error)Databasedatabase.StoreLogslog.LoggerPublishWorkspaceUpdateFn func(context.Context, *database.WorkspaceAgent,wspubsub.WorkspaceEventKind)errorPublishWorkspaceAgentLogsUpdateFn func(ctxcontext.Context, workspaceAgentIDuuid.UUID, msgagentsdk.LogsNotifyMessage)TimeNowFn func()time.Time// defaults to dbtime.Now()}
func (*LogsAPI)BatchCreateLogs¶
func (a *LogsAPI) BatchCreateLogs(ctxcontext.Context, req *agentproto.BatchCreateLogsRequest) (*agentproto.BatchCreateLogsResponse,error)
typeManifestAPI¶
type ManifestAPI struct {AccessURL *url.URLAppHostnamestringExternalAuthConfigs []*externalauth.ConfigDisableDirectConnectionsboolDerpForceWebSocketsboolWorkspaceIDuuid.UUIDAgentFn func(context.Context) (database.WorkspaceAgent,error)Databasedatabase.StoreDerpMapFn func() *tailcfg.DERPMap}
func (*ManifestAPI)GetManifest¶
func (a *ManifestAPI) GetManifest(ctxcontext.Context, _ *agentproto.GetManifestRequest) (*agentproto.Manifest,error)
typeMetadataAPI¶
type MetadataAPI struct {AgentFn func(context.Context) (database.WorkspaceAgent,error)Databasedatabase.StorePubsubpubsub.PubsubLogslog.LoggerTimeNowFn func()time.Time// defaults to dbtime.Now()}
func (*MetadataAPI)BatchUpdateMetadata¶
func (a *MetadataAPI) BatchUpdateMetadata(ctxcontext.Context, req *agentproto.BatchUpdateMetadataRequest) (*agentproto.BatchUpdateMetadataResponse,error)
typeOptions¶
type Options struct {AgentIDuuid.UUIDOwnerIDuuid.UUIDWorkspaceIDuuid.UUIDOrganizationIDuuid.UUIDCtxcontext.ContextLogslog.LoggerClockquartz.ClockDatabasedatabase.StoreNotificationsEnqueuernotifications.EnqueuerPubsubpubsub.PubsubAuditor *atomic.Pointer[audit.Auditor]DerpMapFn func() *tailcfg.DERPMapTailnetCoordinator *atomic.Pointer[tailnet.Coordinator]StatsReporter *workspacestats.ReporterAppearanceFetcher *atomic.Pointer[appearance.Fetcher]PublishWorkspaceUpdateFn func(ctxcontext.Context, userIDuuid.UUID, eventwspubsub.WorkspaceEvent)PublishWorkspaceAgentLogsUpdateFn func(ctxcontext.Context, workspaceAgentIDuuid.UUID, msgagentsdk.LogsNotifyMessage)NetworkTelemetryHandler func(batch []*tailnetproto.TelemetryEvent)AccessURL *url.URLAppHostnamestringAgentStatsRefreshIntervaltime.DurationDisableDirectConnectionsboolDerpForceWebSocketsboolDerpMapUpdateFrequencytime.DurationExternalAuthConfigs []*externalauth.ConfigExperimentscodersdk.ExperimentsUpdateAgentMetricsFn func(ctxcontext.Context, labelsprometheusmetrics.AgentMetricLabels, metrics []*agentproto.Stats_Metric)}
typeResourcesMonitoringAPI¶added inv2.20.0
type ResourcesMonitoringAPI struct {AgentIDuuid.UUIDWorkspaceIDuuid.UUIDLogslog.LoggerClockquartz.ClockDatabasedatabase.StoreNotificationsEnqueuernotifications.EnqueuerDebouncetime.DurationConfigresourcesmonitor.Config}
func (*ResourcesMonitoringAPI)GetResourcesMonitoringConfiguration¶added inv2.20.0
func (a *ResourcesMonitoringAPI) GetResourcesMonitoringConfiguration(ctxcontext.Context, _ *proto.GetResourcesMonitoringConfigurationRequest) (*proto.GetResourcesMonitoringConfigurationResponse,error)
func (*ResourcesMonitoringAPI)PushResourcesMonitoringUsage¶added inv2.20.0
func (a *ResourcesMonitoringAPI) PushResourcesMonitoringUsage(ctxcontext.Context, req *proto.PushResourcesMonitoringUsageRequest) (*proto.PushResourcesMonitoringUsageResponse,error)
typeScriptsAPI¶added inv2.16.0
func (*ScriptsAPI)ScriptCompleted¶added inv2.16.0
func (s *ScriptsAPI) ScriptCompleted(ctxcontext.Context, req *agentproto.WorkspaceAgentScriptCompletedRequest) (*agentproto.WorkspaceAgentScriptCompletedResponse,error)
typeStatsAPI¶
type StatsAPI struct {AgentFn func(context.Context) (database.WorkspaceAgent,error)Databasedatabase.StoreLogslog.LoggerStatsReporter *workspacestats.ReporterAgentStatsRefreshIntervaltime.DurationExperimentscodersdk.ExperimentsTimeNowFn func()time.Time// defaults to dbtime.Now()}
func (*StatsAPI)UpdateStats¶
func (a *StatsAPI) UpdateStats(ctxcontext.Context, req *agentproto.UpdateStatsRequest) (*agentproto.UpdateStatsResponse,error)
typeSubAgentAPI¶added inv2.24.0
type SubAgentAPI struct {OwnerIDuuid.UUIDOrganizationIDuuid.UUIDAgentIDuuid.UUIDAgentFn func(context.Context) (database.WorkspaceAgent,error)Logslog.LoggerClockquartz.ClockDatabasedatabase.Store}
func (*SubAgentAPI)CreateSubAgent¶added inv2.24.0
func (a *SubAgentAPI) CreateSubAgent(ctxcontext.Context, req *agentproto.CreateSubAgentRequest) (*agentproto.CreateSubAgentResponse,error)
func (*SubAgentAPI)DeleteSubAgent¶added inv2.24.0
func (a *SubAgentAPI) DeleteSubAgent(ctxcontext.Context, req *agentproto.DeleteSubAgentRequest) (*agentproto.DeleteSubAgentResponse,error)
func (*SubAgentAPI)ListSubAgents¶added inv2.24.0
func (a *SubAgentAPI) ListSubAgents(ctxcontext.Context, _ *agentproto.ListSubAgentsRequest) (*agentproto.ListSubAgentsResponse,error)
Source Files¶
Click to show internal directories.
Click to hide internal directories.