Help us shape the future of Go! Take the 2026 Go Developer Survey

workspace

package
v0.11.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 17, 2026 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ModeHostPrepared = sdk.WorkspaceModeHostPrepared
	ModeRepository   = sdk.WorkspaceModeRepository
	AccessReadOnly   = "read_only"
	AccessReadWrite  = "read_write"

	CleanupAlways     = sdk.CleanupAlways
	CleanupOnTerminal = sdk.CleanupOnTerminal
	CleanupManual     = sdk.CleanupManual

	RepositoryFinalizeNone        = sdk.RepositoryFinalizeNone
	RepositoryFinalizeLocalCommit = sdk.RepositoryFinalizeLocalCommit
	RepositoryFinalizePushBranch  = sdk.RepositoryFinalizePushBranch
	RepositoryFinalizeOpenPR      = sdk.RepositoryFinalizeOpenPR
)

Variables

This section is empty.

Functions

func AccessMode

func AccessMode(agent *agentcore.Agent) string

AccessMode returns the repository access policy from an agent's execution config. An empty value preserves the runtime's legacy read-write behavior.

func AccessModeFromConfig

func AccessModeFromConfig(config json.RawMessage) string

AccessModeFromConfig returns workspace.access from a raw execution config.

func NormalizeLease

func NormalizeLease(lease *agentcore.WorkspaceLease)

func NormalizeRepositorySpec

func NormalizeRepositorySpec(spec *RepositoryWorkspaceSpec)

func RequiresHostPrepared

func RequiresHostPrepared(agent *agentcore.Agent) bool

func ShouldCleanup

func ShouldCleanup(lease *agentcore.WorkspaceLease, terminal bool) bool

func WorkspaceMode

func WorkspaceMode(agent *agentcore.Agent) string

Types

type CleanupRequest

type CleanupRequest = sdk.CleanupWorkspaceRequest

type FinalizeRequest

type FinalizeRequest = sdk.FinalizeWorkspaceRequest

type FinalizeResult

type FinalizeResult = sdk.FinalizeWorkspaceResult

type GitIdentity

type GitIdentity = sdk.GitIdentity

type HTTPProvider

type HTTPProvider struct {
	BaseURL string
	Token   string
	Client  *http.Client
}

func (HTTPProvider) CleanupWorkspace

func (p HTTPProvider) CleanupWorkspace(ctx context.Context, req CleanupRequest) error

func (HTTPProvider) FinalizeWorkspace

func (p HTTPProvider) FinalizeWorkspace(ctx context.Context, req FinalizeRequest) (*FinalizeResult, error)

func (HTTPProvider) PrepareWorkspace

func (p HTTPProvider) PrepareWorkspace(ctx context.Context, req PrepareRequest) (*agentcore.WorkspaceLease, error)

func (HTTPProvider) ResolveRepositoryWorkspace

func (p HTTPProvider) ResolveRepositoryWorkspace(ctx context.Context, req PrepareRequest) (*RepositoryWorkspaceSpec, error)

type LeaseValidator

type LeaseValidator interface {
	ValidateWorkspace(ctx context.Context, req PrepareRequest, lease agentcore.WorkspaceLease) (*agentcore.WorkspaceLease, bool, error)
}

type PrepareRequest

type PrepareRequest = sdk.PrepareWorkspaceRequest

type Provider

type Provider interface {
	PrepareWorkspace(ctx context.Context, req PrepareRequest) (*agentcore.WorkspaceLease, error)
	FinalizeWorkspace(ctx context.Context, req FinalizeRequest) (*FinalizeResult, error)
	CleanupWorkspace(ctx context.Context, req CleanupRequest) error
}

type Registry

type Registry struct {
	// contains filtered or unexported fields
}

func NewRegistry

func NewRegistry() *Registry

func (*Registry) Provider

func (r *Registry) Provider(appID string) (Provider, bool)

func (*Registry) Register

func (r *Registry) Register(appID string, provider Provider) error

type RepositoryAuth

type RepositoryAuth = sdk.RepositoryAuth

type RepositoryProvider

type RepositoryProvider struct {
	RootDir      string
	SpecProvider RepositorySpecProvider
}

func (RepositoryProvider) CleanupWorkspace

func (p RepositoryProvider) CleanupWorkspace(_ context.Context, req CleanupRequest) error

func (RepositoryProvider) FinalizeWorkspace

func (p RepositoryProvider) FinalizeWorkspace(ctx context.Context, req FinalizeRequest) (*FinalizeResult, error)

func (RepositoryProvider) PrepareWorkspace

func (RepositoryProvider) ValidateWorkspace

type RepositorySpecProvider

type RepositorySpecProvider interface {
	ResolveRepositoryWorkspace(ctx context.Context, req PrepareRequest) (*RepositoryWorkspaceSpec, error)
}

type RepositoryWorkspaceSpec

type RepositoryWorkspaceSpec = sdk.RepositoryWorkspaceSpec

func RepositorySpecFromLease

func RepositorySpecFromLease(lease agentcore.WorkspaceLease) *RepositoryWorkspaceSpec

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL