app

package
v0.308.0 Latest Latest
Warning

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

Go to latest
Published: May 18, 2026 License: MIT Imports: 51 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type App

type App struct {
	Sessions    session.Service
	Messages    message.Service
	History     history.Service
	Permissions permission.Service

	CoderAgent agent.Service

	Projects            project.Service
	ProjectManager      *project.Manager
	Snapshots           snapshot.Service
	LSPClients          map[string]*lsp.Client
	SkillManager        *skills.SkillManager
	MesnadaOrchestrator *mesnadaOrch.Orchestrator
	CronService         *cronjob.Service
	MesnadaServer       *mesnadaServer.Server
	Remembrances        *rag.RemembrancesService
	LuaManager          *luaengine.FilterManager
	MCPGateway          *mcpgateway.Gateway
	Evaluator           *evaluator.EvaluatorService

	// IPCBus is set on the primary instance after calling SetupIPC.
	// Secondary instances leave this nil.
	IPCBus *ipc.Bus
	// IPCIsPrimary is true when this instance holds the IPC lock.
	IPCIsPrimary bool
	// contains filtered or unexported fields
}

func New

func New(ctx context.Context, conn *sql.DB, opts ...AppOptions) (*App, error)

func (*App) RunNonInteractive

func (a *App) RunNonInteractive(ctx context.Context, prompt string, outputFormat string, quiet bool, yoloMode bool) error

RunNonInteractive handles the execution flow when a prompt is provided via CLI flag.

func (*App) SetupIPC added in v0.294.1

func (app *App) SetupIPC(bus *ipc.Bus)

Shutdown performs a clean shutdown of the application SetupIPC configures the primary IPC bus for this instance. Call this after New() on the primary instance to enable ZMQ event broadcasting and to register the db.write handler so secondary instances can proxy writes. bus must already be started (bus.Start called) before calling SetupIPC.

func (*App) Shutdown

func (app *App) Shutdown()

type AppOptions added in v0.100.0

type AppOptions struct {
	// SkipLSP disables LSP client initialisation. Set this to true in headless
	// modes (e.g. ACP stdio) where the editor manages its own language servers.
	SkipLSP bool
	// SkipMesnadaServer avoids starting the embedded Mesnada HTTP server while
	// still allowing the orchestrator and related tools to be initialized.
	SkipMesnadaServer bool
	// DBQuerier overrides the db.Querier used for sessions, messages, and projects.
	// When non-nil this querier is used instead of db.New(conn).
	// Primary instances leave this nil; secondary instances pass a dbproxy.DBProxy.
	DBQuerier db.Querier
}

AppOptions configures optional behaviour for New().

Jump to

Keyboard shortcuts

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