Versions in this module Expand all Collapse all v0 v0.2.0 Apr 25, 2026 Changes in this version + var ErrShuttingDown = fmt.Errorf("runner is being terminated") + func IsErrorOfInterest(err error) bool + type Agent struct + func NewAgent(ctx context.Context, conn *websocket.Conn, instance params.Instance, ...) (*Agent, error) + func (a *Agent) CreateShellSession(ctx context.Context, sessionID uuid.UUID, clientConn *websocket.Conn) (*ClientSession, error) + func (a *Agent) Done() <-chan struct{} + func (a *Agent) IsRunning() bool + func (a *Agent) RemoveClientSession(sessionID uuid.UUID, safe bool) error + func (a *Agent) Start() error + func (a *Agent) Stop() error + type ClientSession struct + func NewClientSession(ctx context.Context, clientConn *websocket.Conn, agentWriter writeMessage, ...) (*ClientSession, error) + func (c *ClientSession) Done() chan struct{} + func (c *ClientSession) Start() error + func (c *ClientSession) Stop() error + func (c *ClientSession) Write(msg []byte) error + type Hub struct + func NewHub(ctx context.Context) (*Hub, error) + func (a *Hub) GetAgent(agentID string) (*Agent, error) + func (a *Hub) RegisterAgent(agent *Agent) error + func (a *Hub) Start() error + func (a *Hub) Stop() error + func (a *Hub) UnregisterAgent(agentID string) error v0.2.0-beta1 Apr 13, 2026