Examples

There is one Go SDK: github.com/AdminTurnedDevOps/ABox/pkg/abox. Open a session, then call methods on it — Turn, RunCommand, ListFiles, cancel via context, and so on. You do not add a package per feature.

go get github.com/AdminTurnedDevOps/ABox@latest
import "github.com/AdminTurnedDevOps/ABox/pkg/abox"

sess, err := abox.Open(ctx, abox.Options{})
// sess.Turn(...)
// sess.RunCommand(ctx, "uname -a", 15)
// sess.ListFiles(ctx, ".", 4, 50)

Each child page is a sample main that calls one of those methods. Copy it into your program. abox-vmm on PATH (the darwin_arm64 archive on the GitHub release). Golden image and provider key: Quickstart. Probe methods do not need a key.

Call Sample
Open + Turn Basic turn
Resume Resume
Turn + canceled ctx Cancel
TurnOpts Turn options
ListFiles List files
ReadFile Read file
RunCommand Run command
ExportPatch Export patch
SetModel Set model
Turn events Print events
Capabilities Capabilities
Options Custom VM
ErrGuestTooOld Errors
History History
Turn twice Multi-turn
SetMCPTokens MCP tokens

Table of contents