Documentation
¶
Index ¶
- Constants
- func LocalEnvSessionMeta(configPath string) *session.Meta
- func WithLocalUICodeSpaceRoute(r *http.Request, codeSpaceID string) *http.Request
- func WithLocalUIEnvRoute(r *http.Request) *http.Request
- func WithLocalUIPluginRoute(r *http.Request) *http.Request
- func WithLocalUIPortForwardRoute(r *http.Request, forwardID string) *http.Request
- type Backend
- type CodeRuntimeArtifactManifest
- type CodeRuntimeImportChunkResult
- type CodeRuntimeImportSession
- type CodeRuntimeImportSessionRequest
- type CodeRuntimeStatus
- type CodeRuntimeVersionRequest
- type CodexBackend
- type CreateSpaceRequest
- type Options
- type PortForwardBackend
- type Server
- func (g *Server) AppendCodeRuntimeImportChunk(ctx context.Context, uploadID string, chunkIndex int64, body io.Reader) (CodeRuntimeImportChunkResult, error)
- func (g *Server) Close() error
- func (g *Server) CodeRuntimeStatus(ctx context.Context) (CodeRuntimeStatus, error)
- func (g *Server) CompleteCodeRuntimeImportSession(ctx context.Context, uploadID string) (CodeRuntimeStatus, error)
- func (g *Server) CreateCodeRuntimeImportSession(ctx context.Context, manifest CodeRuntimeArtifactManifest) (CodeRuntimeImportSession, error)
- func (g *Server) EnvAppShellReadinessError() error
- func (g *Server) EnvAppShellReady() bool
- func (g *Server) PluginPlatformEnabled() bool
- func (g *Server) ServeHTTP(w http.ResponseWriter, r *http.Request)
- func (g *Server) Start(ctx context.Context) error
- func (g *Server) URL() string
- type SpaceStatus
- type UpdateSpaceRequest
Constants ¶
View Source
const (
// LocalUIChannelID is the synthetic session channel used by Local UI Env App requests.
LocalUIChannelID = "local-ui"
)
Variables ¶
This section is empty.
Functions ¶
func LocalEnvSessionMeta ¶ added in v0.7.2
LocalEnvSessionMeta returns the synthetic Env App session used by Local UI routes.
func WithLocalUIPluginRoute ¶ added in v0.7.2
Types ¶
type Backend ¶
type Backend interface {
ListSpaces(ctx context.Context) ([]SpaceStatus, error)
CreateSpace(ctx context.Context, req CreateSpaceRequest) (*SpaceStatus, error)
UpdateSpace(ctx context.Context, codeSpaceID string, req UpdateSpaceRequest) (*SpaceStatus, error)
DeleteSpace(ctx context.Context, codeSpaceID string) error
StartSpace(ctx context.Context, codeSpaceID string) (*SpaceStatus, error)
StopSpace(ctx context.Context, codeSpaceID string) error
ResolveCodeServerPort(ctx context.Context, codeSpaceID string) (int, error)
CodeRuntimeStatus(ctx context.Context) (CodeRuntimeStatus, error)
CreateCodeRuntimeImportSession(ctx context.Context, manifest CodeRuntimeArtifactManifest) (CodeRuntimeImportSession, error)
AppendCodeRuntimeImportChunk(ctx context.Context, uploadID string, chunkIndex int64, body io.Reader) (CodeRuntimeImportChunkResult, error)
CompleteCodeRuntimeImportSession(ctx context.Context, uploadID string) (CodeRuntimeStatus, error)
SelectCodeRuntimeVersion(ctx context.Context, version string) (CodeRuntimeStatus, error)
RemoveCodeRuntimeVersion(ctx context.Context, version string) (CodeRuntimeStatus, error)
CancelCodeRuntimeOperation(ctx context.Context) (CodeRuntimeStatus, error)
}
type CodeRuntimeArtifactManifest ¶
type CodeRuntimeArtifactManifest = codeserver.WorkspaceEngineArtifactManifest
type CodeRuntimeImportChunkResult ¶
type CodeRuntimeImportChunkResult = codeserver.WorkspaceEngineImportChunkResult
type CodeRuntimeImportSession ¶
type CodeRuntimeImportSession = codeserver.WorkspaceEngineImportSession
type CodeRuntimeImportSessionRequest ¶
type CodeRuntimeImportSessionRequest struct {
Manifest CodeRuntimeArtifactManifest `json:"manifest"`
}
type CodeRuntimeStatus ¶
type CodeRuntimeStatus = codeserver.RuntimeStatus
type CodeRuntimeVersionRequest ¶
type CodeRuntimeVersionRequest struct {
Version string `json:"version"`
}
type CodexBackend ¶
type CodexBackend interface {
Status(ctx context.Context) codexbridge.Status
ReadCapabilities(ctx context.Context, cwd string) (*codexbridge.Capabilities, error)
ListThreads(ctx context.Context, req codexbridge.ListThreadsRequest) ([]codexbridge.Thread, error)
ReadThread(ctx context.Context, threadID string) (*codexbridge.ThreadDetail, error)
StartThread(ctx context.Context, req codexbridge.StartThreadRequest) (*codexbridge.ThreadDetail, error)
StartTurn(ctx context.Context, req codexbridge.StartTurnRequest) (*codexbridge.Turn, error)
SteerTurn(ctx context.Context, req codexbridge.SteerTurnRequest) (*codexbridge.Turn, error)
ArchiveThread(ctx context.Context, threadID string) error
UnarchiveThread(ctx context.Context, threadID string) error
ForkThread(ctx context.Context, req codexbridge.ForkThreadRequest) (*codexbridge.ThreadDetail, error)
InterruptTurn(ctx context.Context, req codexbridge.InterruptTurnRequest) error
StartReview(ctx context.Context, req codexbridge.StartReviewRequest) (*codexbridge.ThreadDetail, error)
SubscribeThreadEvents(ctx context.Context, threadID string, afterSeq int64) ([]codexbridge.Event, <-chan codexbridge.Event, error)
RespondToRequest(ctx context.Context, threadID string, requestID string, resp codexbridge.PendingRequestResponse) error
}
type CreateSpaceRequest ¶
type Options ¶
type Options struct {
Logger *slog.Logger
ListenAddr string
DistFS stdfs.FS
Backend Backend
PortForward PortForwardBackend
AI *ai.Service
Notes *notes.Service
WorkbenchLayout *workbenchlayout.Service
Terminal *terminal.Manager
Codex CodexBackend
Audit *auditlog.Store
Diagnostics *diagnostics.Store
ResolveSessionMeta func(channelID string) (*session.Meta, bool)
ResolveSessionTunnelURL func(channelID string) (string, bool)
// ConfigPath is the absolute path to the runtime config file.
// It is used to read and persist settings updates initiated from the Env App UI.
ConfigPath string
// SecretsStore holds user-managed secrets (such as AI provider API keys).
// If nil, the app server will derive a default secrets path from ConfigPath.
SecretsStore *settings.SecretsStore
// ThreadReadStateStore persists scoped per-surface thread read watermarks.
ThreadReadStateStore *threadreadstate.Store
// PluginPlatform is the released ReDevPlugin HTTP handler mounted behind Redeven routes.
PluginPlatform http.Handler
// AgentHomeDir is the canonical absolute path to the default home directory.
AgentHomeDir string
FilesystemScope *filesystemscope.Registry
}
type PortForwardBackend ¶
type PortForwardBackend interface {
ListForwards(ctx context.Context) ([]pfregistry.Forward, error)
GetForward(ctx context.Context, forwardID string) (*pfregistry.Forward, error)
CreateForward(ctx context.Context, req portforward.CreateForwardRequest) (*pfregistry.Forward, error)
UpdateForward(ctx context.Context, forwardID string, req portforward.UpdateForwardRequest) (*pfregistry.Forward, error)
DeleteForward(ctx context.Context, forwardID string) error
TouchLastOpened(ctx context.Context, forwardID string) (*pfregistry.Forward, error)
}
type Server ¶
type Server struct {
// contains filtered or unexported fields
}
func (*Server) AppendCodeRuntimeImportChunk ¶
func (*Server) CodeRuntimeStatus ¶
func (g *Server) CodeRuntimeStatus(ctx context.Context) (CodeRuntimeStatus, error)
func (*Server) CompleteCodeRuntimeImportSession ¶
func (*Server) CreateCodeRuntimeImportSession ¶
func (g *Server) CreateCodeRuntimeImportSession(ctx context.Context, manifest CodeRuntimeArtifactManifest) (CodeRuntimeImportSession, error)
func (*Server) EnvAppShellReadinessError ¶
EnvAppShellReadinessError validates that the embedded Env App shell can be opened by Desktop before the runtime advertises open-readiness.
func (*Server) EnvAppShellReady ¶
EnvAppShellReady reports whether the embedded Env App shell is complete.
func (*Server) PluginPlatformEnabled ¶ added in v0.7.2
type SpaceStatus ¶
type SpaceStatus struct {
CodeSpaceID string `json:"code_space_id"`
Name string `json:"name"`
Description string `json:"description"`
WorkspacePath string `json:"workspace_path"`
CodePort int `json:"code_port"`
CreatedAtUnixMs int64 `json:"created_at_unix_ms"`
UpdatedAtUnixMs int64 `json:"updated_at_unix_ms"`
LastOpenedAtUnixMs int64 `json:"last_opened_at_unix_ms"`
Running bool `json:"running"`
PID int `json:"pid"`
}
type UpdateSpaceRequest ¶
Click to show internal directories.
Click to hide internal directories.