runner

package
v0.1.1 Latest Latest
Warning

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

Go to latest
Published: Aug 26, 2026 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func New

func New(cfg Config, deps Deps) (agentkit.Runner, error)

New registers runner: Root plugin: connects Platform to Loop and owns process lifecycle.

Best practices:

  • Ordering within a session is preserved at any concurrency; only cross-session turns overlap.
  • A panicking or failing turn is reported on its session and never kills the process.

Types

type Config

type Config struct {
	// ShutdownTimeoutSeconds bounds how long shutdown waits for in-flight turns
	// to finish. 0 waits indefinitely.
	ShutdownTimeoutSeconds int `json:"shutdownTimeoutSeconds"`
	// MaxConcurrentTurns caps how many turns run at once. Defaults to 1, i.e.
	// fully serial, because turns from different sessions share one workspace:
	// two agents running `go build` or editing the same file concurrently is a
	// real hazard. Raise it for multi-conversation transports (IM, HTTP) where
	// sessions are genuinely independent.
	//
	// Ordering within a session is always preserved, whatever the value.
	MaxConcurrentTurns int `json:"maxConcurrentTurns"`
}

type Deps

type Deps struct {
	Platform agentkit.Platform `json:"platform"`
	Loop     agentkit.Loop     `json:"loop"`
}

type Root

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

func (*Root) Loop

func (r *Root) Loop() agentkit.Loop

Loop exposes the turn scheduler so RPC/TUI integrations can steer or queue follow-ups; agentkit.Loop already carries Steer/FollowUp.

func (*Root) Run

func (r *Root) Run(ctx context.Context, result *build.Result) error

func (*Root) Stop

func (r *Root) Stop(context.Context) error

Jump to

Keyboard shortcuts

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