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

domain

package
v0.234.0 Latest Latest
Warning

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

Go to latest
Published: Oct 20, 2026 License: Apache-2.0 Imports: 0 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Action

type Action struct {
	Kind      ActionKind
	Target    *Target
	Text      string // type: the text to type
	Label     string // press: exact accessibility label
	Scope     string // accessibility/press: frontmost, dock, menubar, app:<name>, or pid:<n>
	Combo     string // key: a combo such as "cmd+shift+t"
	Button    string // click kinds: left (default), right, middle
	Direction string // scroll: vertical (default) or horizontal
	Amount    int    // scroll: wheel clicks; negative reverses direction
}

Action is one computer-use request: what to do and, where relevant, on what target and with what input.

type ActionKind

type ActionKind string

ActionKind enumerates what the Computer tool can do.

const (
	ActionScreenshot    ActionKind = "screenshot"
	ActionAccessibility ActionKind = "accessibility"
	ActionCursor        ActionKind = "cursor"
	ActionMove          ActionKind = "move"
	ActionClick         ActionKind = "click"
	ActionDoubleClick   ActionKind = "double_click"
	ActionTripleClick   ActionKind = "triple_click"
	ActionScroll        ActionKind = "scroll"
	ActionType          ActionKind = "type"
	ActionKey           ActionKind = "key"
	ActionPress         ActionKind = "press"
)

type Image

type Image struct {
	Data     string // base64-encoded
	MimeType string
	Path     string // on-disk copy, reachable by ImageDecode for non-vision models
}

Image is a captured frame.

type Observation

type Observation struct {
	Message  string // LLM-facing outcome description
	CursorX  int
	CursorY  int
	Width    int // frame-space dimensions
	Height   int
	Image    *Image      // set by screenshot actions
	Elements []UIElement // set by accessibility observations
}

Observation is what the computer reports back after an action.

type Region

type Region struct {
	X      int
	Y      int
	Width  int
	Height int
}

Region is a rectangle in the frame coordinate space.

type Target

type Target struct {
	X int
	Y int
	// Region, on a screenshot action, captures only this rectangle.
	Region *Region
}

Target locates an action on screen, in the frame coordinate space (the same space screenshots and their annotations use).

type UIElement added in v0.179.0

type UIElement struct {
	Role  string `json:"role"`
	Label string `json:"label"`
	State string `json:"state"`
	BBox  [4]int `json:"bbox"`
}

UIElement is one compact accessibility-tree observation. BBox is [left, top, right, bottom] in the same frame coordinate space as Computer screenshots and pointer actions.

Jump to

Keyboard shortcuts

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