Documentation
¶
Overview ¶
Package workbench composes the existing Copilot service for caller-owned hosts.
Index ¶
- func CanonicalRepositoryRoot(ctx context.Context, launcher proc.ILauncher, path string) (string, error)
- func MountUI(engine gin.IRouter, directory string)
- type Option
- func WithBridge(bridge copilotadapter.ICopilotBridge) Option
- func WithKanbanOrigins(origins ...string) Option
- func WithLauncher(launcher proc.ILauncher) Option
- func WithLogger(logger *slog.Logger) Option
- func WithRepository(path string) Option
- func WithScheduleStore(schedules cron.IStore) Option
- func WithShell(path string) Option
- func WithTaskContinuity(tasks *workcontinuity.Continuity) Option
- func WithWorktrees(path string) Option
- type Workbench
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Option ¶
type Option func(config *settings)
func WithBridge ¶
func WithBridge(bridge copilotadapter.ICopilotBridge) Option
func WithKanbanOrigins ¶
WithKanbanOrigins mounts the live board on the same router as the adapter. The host supplies its actual allowed browser origins; no listener is created.
func WithLauncher ¶ added in v0.2.0
WithLauncher grants the process capability that Git and terminal shells start through. It is required: the Workbench never starts a process itself.
func WithLogger ¶
func WithRepository ¶
func WithScheduleStore ¶ added in v0.2.0
WithScheduleStore grants the cron store chat schedules fire through: the binary builds it with cron.NewStore over a pool it applied CSF's schema to. It is required: the Workbench opens no database of its own.
func WithTaskContinuity ¶
func WithTaskContinuity(tasks *workcontinuity.Continuity) Option
func WithWorktrees ¶
type Workbench ¶
type Workbench struct {
Adapter *copilotadapter.CopilotAdapter
Store *store.PostgresStore
// contains filtered or unexported fields
}
Workbench shares one adapter and its SQLC store between HTTP and inspection. The caller owns the database and CLI bridge and mounts Adapter.Register.
func NewWorkbench ¶
NewWorkbench composes existing service libraries over the database capability the binary granted, which already carries the adapter's schema (store.Migrations). It never opens a pool, starts a listener or a provider process, or restores sessions implicitly.
func (*Workbench) Close ¶
Close drains browser subscriptions before closing their adapter. The caller continues to own the database and provider bridge.